我有一个文本框,用户可以在其中选择日期。选择日期后,我希望显示另一个文本框。但即使没有日期,也始终显示文本框。如果txtBookDate
为空,则不应显示txtBookComment
。
<tr id="trBookDate" runat="server" >
<td>
Book IN Date
</td>
<td>
<asp:TextBox runat="server" ID="txtBookDate" rel="datepicker" ></asp:TextBox>
</td>
</tr>
<tr id="trBookInComment" runat="server" >
<td>
Book IN Comment
</td>
<td>
<textarea id="txtBookInComment" runat="server" width="100%" maxlength="40"></textarea>
</td>
</tr>
<script type="text/javascript">
$('#<%= txtBookDate.ClientID %>').change(function () {
if($(this) != null) {
$('#<%= trBookInComment.ClientID %>').show();
} else {
$('#<%= trBookInComment.ClientID %>').hide();
}
});
$('#<%= txtBookDate.ClientID %>').trigger('change');
</script>
答案 0 :(得分:1)
$(this)引用的对象是第一个文本框本身,它不是null。它没有引用文本框中的值。
尝试
if ($(this).val().length)...