检查文本框是否有值,是否需要其他文本框

时间:2014-01-23 05:39:54

标签: c# javascript jquery asp.net

我有三个文本框

<asp:textbox id="txt1" runat=server>
<asp:textbox id="txt2" runat=server>
<asp:textbox id="txt1" runat=server>
<asp:button ID="btnCheck" text="check" runat=server onclick="btnCheck_Click">

如果txt1有值,我需要txt1和txt2。

这可以在javascript / jquery中实现,因为我不想触发复选框的onclick事件。

3 个答案:

答案 0 :(得分:1)

您需要ClientID属性才能获取元素ID。 ClientID属性获取由ASP.NET生成的HTML标记的控件ID。

如果您只是在javascript / jquery中使用tetxbox Id值,那么您将无法捕获元素,因为当{asp}将<asp:TextBox>标记重新粘贴为HTML等效<input type="text>时,asp.net也是使用系统生成的值重新生成id。

<script type="text/javascript">
        $(function () {
            $('#<%=btnCheck.ClientID%>').click(function () {

                var txtBoxOne = $('#<%=txt1.ClientID%>').val();
                var txtBoxTwo = $('#<%=txt2.ClientID%>').val();
                var txtBoxThree = $('#<%=txt3.ClientID%>').val();
                if (txtBoxOne != "") {
                    if (txtBoxTwo == "" || txtBoxThree == "") {
                        alert('Please enter');
                        return;
                    }
                }
            });

        });

    </script>

答案 1 :(得分:0)

试试这个

 function btnCheck_Click(){
       var txtbox1 = $('#yourtxt1id').val();
       if(txtbox1.value.length == 0){
       }
       else{
          $('#yourtxt3id').attr('disabled','true');

       }
  });

答案 2 :(得分:0)

首先,您不能重复id。它应该是唯一的,因此请尝试将HTML更改为:

<asp:textbox id="txt1" runat=server>
<asp:textbox id="txt2" runat=server>
<asp:textbox id="txt3" runat=server>
<asp:button ID="btnCheck" text="check" runat=server>

之后,您可以使用此代码来完成任务:

$('#btnCheck').click(function() {
    if ($('#txt1').val().length > 0) {
        var txt2Val = $('#txt2').val().length,
            txt3Val = $('#txt3').val().length;            
        if( txt2Val == 0 || txt3Val == 0) {
            alert('Missing Value');   
        }
    }
});

<强> Fiddle Demo