如果文本框中输入了日期,则显示其他文本框

时间:2015-10-05 16:14:57

标签: javascript c# asp.net textbox show-hide

我有一个文本框,用户可以在其中选择日期。选择日期后,我希望显示另一个文本框。但即使没有日期,也始终显示文本框。如果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>

1 个答案:

答案 0 :(得分:1)

$(this)引用的对象是第一个文本框本身,它不是null。它没有引用文本框中的值。

尝试

if ($(this).val().length)...