0

我使用 jQuery 已经有一段时间了,这对我来说毫无意义。谁能解释为什么会这样?我有一个隐藏字段,<asp:HiddenField ID="hidIsValid" runat="server" /> 我有这个代码为它分配一个值。

这花了我几个小时才决定尝试改变我设置值的方式,现在它可以工作了,但似乎这是错误的方式:

  $('#<%= hidIsValid.ClientID %>').val("true");  **This line never worked
  $('#<%= hidIsValid.ClientID %>').val() = "true";  **this line does work

我来自这里,我取出了很多代码,这只是没有显示相关的行。

      function fnValidateAttendees() {
       // $('#<%= hidIsValid.ClientID %>').val("true");  **This line never worked
        $('#<%= hidIsValid.ClientID %>').val() = "true";            
        $('.tFirstName, .tLastName').each(function () {
            if (!($(this).val().match(/^[a-z -']+$/))) {                    
                $('#<%= hidIsValid.ClientID %>').val("false"); //**this line works
            }              
        });
        $('.tPhoneNumber').each(function () {
            if (!($(this).val().match(/^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$/))) {                   
                $('#<%= hidIsValid.ClientID %>').val("false"); //**this line works
            }
        });
        $('.tEmail').each(function () {
            if (!($(this).val().match(/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/))) {
                $('#<%= hidIsValid.ClientID %>').val("false"); //this line works
            }
        });
        return true;
    }        

有人能理解吗

4

2 回答 2

1

你怎么能说这不起作用..

使用 .val() 设置值不会立即反映在 DOM 中。

也许这就是你觉得它不起作用的原因..

这也没有任何意义..

$('#<%= hidIsValid.ClientID %>').val() = "true"; 
于 2012-10-16T04:18:02.957 回答
0

您可以使用attrjQuery API 来设置值。

$('#<%= hidIsValid.ClientID %>').attr('value','true'); 

或尝试删除引号。

$('#<%= hidIsValid.ClientID %>').val(true);
于 2012-10-16T04:29:06.353 回答