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

attrjQueryAPIを使用して値を設定できます。

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

または、引用符を削除してみてください。

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