1

そのため、非表示のフォーム フィールドを使用して、JQuery コード onSubmit からのデータを入力しています。問題は、JQuery が両方の Type="Hidden" フィールドにデータを入力することです。name="moment" のみを入力したいのですが、どうすれば修正できますか?

これが私のhtmlです:

<form method="post" action="momentactions.php">
    <input type="hidden" name="album_id" value="<?php echo $album_id; ?>">
    <input type="hidden" name="moment">
    <input type="submit" name="submit" value="submit">
</form>

これが私のJQueryです:

$('form').on('submit', function() {
    values = [];
    $('#container-top img').each(function() {
    values.push($(this).attr('value'));
    });
$('input[type=hidden]').val(JSON.stringify(values));
});
4

4 に答える 4

3

単純な:

input[type="hidden"][name="moment"]

それでも、すべての値を抽出してシリアル化し、シリアル化して送信することはお勧めできません。

于 2012-09-21T03:06:50.090 に答える
3

このコード行

$('input[type=hidden]')

「タイプが非表示のすべての入力要素を教えてください」と言います。それらの1つだけが必要なため、いくつかの異なることができます。

目的の入力フィールドに ID を指定してから、jQuery ID セレクター (#) を使用できます。

$('#idgoeshere')

または、目的の入力フィールドにクラスを指定して、クラス セレクター (.) を使用することもできます。

$('.classgoeshere')

または、現在のhtmlを保持して、現在のセレクターと同じ属性セレクターを使用して、異なる属性のみを使用できます。

$('input[name="moment"]')
于 2012-09-21T03:11:30.030 に答える
2

これを試して

$('input[type=hidden][name=moment]').val(JSON.stringify(values));

また、入力タグを閉じることを忘れないでください..

$('input[name=moment]')
$('input[name=moment]:hidden')

すべて有効なセレクターです。

于 2012-09-21T03:06:56.980 に答える
0

入力タグに id="moment" を追加することをお勧めします

<input type="hidden" name="moment" />

に変更します

<input type="hidden" name="moment" id="moment" />

あなたのコードでは、あなたはただ使うことができます

$('input#moment').val(JSON.stringify(values));
于 2012-09-21T03:08:54.900 に答える