1

投稿する前に確認する必要のあるテキストボックスがいくつかあります。私は各関数を使用してjQueryでこれを行います。送信ボタンが押されたとき(LinkBut​​ton1)、テキストボックスを繰り返し処理し、値を確認します。

<asp:textbox id="txt1" class="tocheck" runat="server />
<asp:textbox id="txt2" class="tocheck" runat="server />
<asp:textbox id="txt3" class="tocheck" runat="server />

$('#LinkButton1').click(function () {
    var error = false;
    $.each('.tocheck', function (i, v) {
        checkVal(v.val());
    });
});

しかし、vが未定義であるというランタイムエラーがスローされます。

ここに画像の説明を入力してください

テキストボックスの値を取得するにはどうすればよいですか?

ありがとうございました。

4

6 に答える 6

6

渡す必要はありませんv-削除してください。

$(this)代わりに使用してください。

IE

$('#LinkButton1').click(function () {
    var error = false;
    $('.tocheck').each( function () {
        checkVal($(this).val());
    });
});
于 2012-11-21T16:13:46.027 に答える
3

問題は、コレクションを正しく渡していないことです。

$('#LinkButton1').click(function () {
    var error = false;
    $.each('.text', function (i, v) { // <-- you are passing in a STRING not a collection of elements
        checkVal(v.val());
    });
});

試す

$('#LinkButton1').click(function () {
    var error = false;
    $.each($('.text'), function (i, v) {
        checkVal($(v).val());// <-- need to wrap in jQuery to use jQuery methods
    });
});
于 2012-11-21T16:18:36.807 に答える
3

クラスセレクターでエラーが発生しました。に変更します

$(".tocheck").each(function(i, v){
    checkVal($(v).val());
})
于 2012-11-21T16:18:14.513 に答える
2

まず、

$.each('.tocheck', function (i, v) {
        checkVal(v.val());
    });

どちらかであるはずです

$('.tocheck').each(function (i, v) {
        checkVal(v.value);
});

' または /

 $.each( $('.tocheck'), function (i, v) {
            checkVal(v.value);
        });

次に 、 vここにDOMオブジェクトがあり、そのオブジェクトでjQueryメソッドを使用しようとしています。これがエラーの理由です。

それでv.val()

察するに

v.value または $(v).val(); または this.value または $(this).val();

于 2012-11-21T16:22:21.930 に答える
1

$.eachvがアイテムではなく値である理由であるintergersやstringなどのほとんどの値配列用に設計された関数。したがって、以下のように各jQuery配列を使用する必要があります。

$(".tocheck").each(function (index, item)
{
   alert($(item).val());
});
于 2012-11-21T16:17:27.103 に答える
0
$('.tocheck').each( function () {
        checkVal($(this).val());
    });
于 2012-11-21T16:13:38.303 に答える