1

ループ内にあるフォームに一意の ID を持たせようとしています。これに関する問題は、最初のフォームのみが機能しており、その後のすべてのフォームが jquery コードをトリガーしていないことです。

形:

<?php foreach( $tasks as $tasks ) : ?>
<tr>
    <td><?php echo $tasks->title ?></td>
    <td><?php echo $newDate; ?></td>
    <td><?php echo $tasks->details ?></td>
    <td><?php echo $tasks->category ?></td>
    <td>

<form class="noclass">
    <input class="hideit id" type="text" name="id" value="<?php echo $tasks->id ?>" />
    <input type="checkbox" value="<?php echo $tasks->user ?>" name="value" id="checkbox-2-1" class="regular-checkbox big-checkbox" <?php echo $tasks->user ?> />
</form>

</td>
</tr>
<?php endforeach; ?>

Jクエリ:

<script>
    $(function() {
        $('#checkbox-2-1').click(function() {
            var id = $(".id").val();
            var value = $(".check").val();
            var dataString = '?id=' + id + '&value=' + value + '&user=<?php echo $id ?>';
            alert(dataString);

            $.ajax({
                type: "POST",
                url: "http://example.com/process.php",
                data: dataString,
                cache: false,
            });
        })
    })
    return false;
</script>
4

2 に答える 2

1

あなたが使用している

var id = $(".id").val();  
var value = $(".check").val();

そして$(".id")`$(".check")' が返すものはオブジェクトです。

そのため、キーと値のペアの文字列に変換してから送信する必要があります。

foreach修正については、Gautamの回答も参照してください。

もう1つ

checkbox-2-1チェックボックスevert-time loop gets executeのIDを繰り返しており、各domのIDは一意である必要があります。

私が提案すること

以下のコードを使用します。

チェックボックスクリックイベント用

$('input:ckeckbox[name="value"]').on('change',function(){ });

および以下のように値を取得するための内部function(){ }書き込みコードclass idcheck

$(this).closest('form.noclass').find('.id').val();
$(this).closest('form.noclass').find('.value').val()
于 2013-06-06T05:20:31.950 に答える
1

最初のフォームが閉じていません....このように閉じます

<form class="noclass">
    <input class="hideit id" type="text" name="id" value="<?php echo $tasks->id ?>" />
</form>
<form class="noclass">
    <input class="hideit id" type="text" name="id" value="<?php echo $tasks->id ?>" />
    <input type="checkbox" value="<?php echo $tasks->user ?>" name="value" id="checkbox-2-1" class="regular-checkbox big-checkbox" <?php echo $tasks->user ?> />
</form>

そして、何ですか

<?php foreach( $tasks as $tasks ) : ?>

次のような別の変数を指定してみてください

<?php foreach( $tasks as $task ) : ?>

次に、シンマルタニアを変更します

于 2013-06-06T05:16:17.610 に答える