0

我在 Div 中有一个带有标签及其验证摘要的字段。它是模态 JQuery 对话框的一部分:

<table>
.
.
.
<div id="user-date-add">
                    <tr>
                        <td width="100">
                            <div class="editor-label">
                                @Html.LabelFor(model => model.User.Date)
                            </div>
                        </td>
                        <td>
                            <div class="editor-field">
                                @Html.EditorFor(model => model.User.Date)
                                @Html.ValidationMessageFor(model => model.User.Date)
                            </div>
                        </td>

                    </tr>
                </div>
.
.
.

根据 JavaScript 函数内部的特定条件,我需要使用该 Div 内的 Date 字段和相关数据隐藏或显示此部分

所以我尝试了:

   if(condition)
    {
     $("#user-date-add").hide();
    }
     else
    {
      $("#user-date-add").show();
    }

我还尝试利用:

$("#user-date-add").trigger();

它不起作用。表单上的字段甚至不闪烁。是因为 div 是在模态弹出窗口内呈现的吗?还是因为里面有输入标签?顺便说一下,Editor Date 字段显示为 DatePicker。

我怎样才能使这项工作?先感谢您。

4

2 回答 2

1

假设对话框的 ID 为dialog-box,那么您可以尝试使用 $('#dialog-box #user-date-add').hide();这可能是因为对话框正在实例化的方式,并且可能将现有的 div 留在那里,这意味着您的 jQuery 选择器无法正常工作。

尝试在 Firefox 中使用 Firebug 或在 Chrome 中使用 Web Inspector 在控制台中尝试不同的变体,例如以下内容。

$('#user-date-add');
$('[id=user-date-add]');
$('[id=user-date-add');
$('.editor-label');

希望它有帮助,戴夫

于 2012-05-25T22:45:33.293 回答
0

显然在表格单元格内有 DIV 标签是无效的。

我删除了 div 并将 ID 添加到我需要 .Hide()/.Show() 的实际行中。

                <tr id="user-date-add">
                    <td width="100">
                        <div class="editor-label">
                            @Html.LabelFor(model => model.User.Date)
                        </div>
                    </td>
                    <td>
                        <div class="editor-field">
                            @Html.EditorFor(model => model.User.Date)
                            @Html.ValidationMessageFor(model => model.User.Date)
                        </div>
                    </td>

                </tr>
于 2012-06-08T17:52:41.507 回答