通过 AJAX 提交带有递增复选框 ID 的表单

发布于 2024-10-21 02:15:46 字数 1443 浏览 2 评论 0原文

我有一个 AJAX 表单提交工作正常,但我的复选框有递增的 id,我需要根据选中的复选框来提交这些 id,然后当用户提交选中的选择时,数据会传递到我的 PHP 脚本。

如何通过 AJAX 将所有选中的复选框传递给我的 PHP 脚本?

$(function () {
    $(".submit").click(function () {
        var pageReturn = $("#pageReturn").val();
        var sendCheck = $("#sendCheck").val();
        var dataString = 'pageReturn=' + pageReturn + '&sendCheck=' + sendCheck;

        if (emailLink == '' || pageReturn == '' || sendCheck == '') {
            $('.success').fadeOut(200).hide();
            $('.error').fadeOut(200).show();
        } else {
            $.ajax({
                type: "POST",
                url: "phpscripts/compose.php?artid=<?php echo $artid; ?>&userart=<?php echo $_GET['userart'];?>",
                data: dataString,
                cache: false,
                success: function () {
                    $('.success').fadeIn(200).show();
                    $('.error').fadeOut(200).hide();
                }
            });
        }
        return false;
    });
});

要通过所有复选框,我将在传递复选框的位置添加 +1,如下所示:

var sendCheck = $("#sendCheck").val()+1;

我的复选框的 HTML 代码如下所示 带有

<input name="sendCheck" id="sendCheck<?php echo $i++; ?>" class="reccomendCheck" type="checkbox" value="<?php echo $row_ArtContact['contact_id'];?>" /> 

需要传递到我的 PHP 脚本的递增值的复选框。

理论上,用户可以随机检查并需要勾选的复选框数量不受限制。

I have an AJAX form submission working properly but I have incrementing id's to my checkboxes that I need to be submitted according to what check boxes are checked, then when the user submits the checked selections the data pass over to my PHP script.

How do I pass all checked checkboxes over to my PHP script via AJAX?

$(function () {
    $(".submit").click(function () {
        var pageReturn = $("#pageReturn").val();
        var sendCheck = $("#sendCheck").val();
        var dataString = 'pageReturn=' + pageReturn + '&sendCheck=' + sendCheck;

        if (emailLink == '' || pageReturn == '' || sendCheck == '') {
            $('.success').fadeOut(200).hide();
            $('.error').fadeOut(200).show();
        } else {
            $.ajax({
                type: "POST",
                url: "phpscripts/compose.php?artid=<?php echo $artid; ?>&userart=<?php echo $_GET['userart'];?>",
                data: dataString,
                cache: false,
                success: function () {
                    $('.success').fadeIn(200).show();
                    $('.error').fadeOut(200).hide();
                }
            });
        }
        return false;
    });
});

To pass all check boxes would I add +1 to where my checkboxes are being passed like:

var sendCheck = $("#sendCheck").val()+1;

My HTML code for my check boxes looks like this

<input name="sendCheck" id="sendCheck<?php echo $i++; ?>" class="reccomendCheck" type="checkbox" value="<?php echo $row_ArtContact['contact_id'];?>" /> 

Check boxes with incrementing values that need to be passes over to my PHP script.

In theory there could be an unlimited number of checkboxes that the user could randomly check and need to be summited.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

那些过往 2024-10-28 02:15:46

使用 serialize 函数生成数据。

看这个例子:点击几个复选框,看看会发生什么!

http://jsfiddle.net/VeBDk/

示例:

HTML:

<form>
    Check 1<input type="checkbox" name="check1" id="check1" value="1"/>
    Check 2<input type="checkbox" name="check2" id="check2" value="2"/>
    Check 3<input type="checkbox" name="check3" id="check3" value="3"/>
    Check 4<input type="checkbox" name="check4" id="check4" value="4"/>
    Check 5<input type="checkbox" name="check5" id="check5" value="5"/>
    <button>Submit</button>
</form>

jQuery:

$(document).ready(function(){
   var data = $('form').serialize();
   $.post('script.php', data, function(){
     //success!
   });
});

Use the serialize function to generate your data.

Look at this example: click a few checkboxes and see what happens!

http://jsfiddle.net/VeBDk/

Example:

HTML:

<form>
    Check 1<input type="checkbox" name="check1" id="check1" value="1"/>
    Check 2<input type="checkbox" name="check2" id="check2" value="2"/>
    Check 3<input type="checkbox" name="check3" id="check3" value="3"/>
    Check 4<input type="checkbox" name="check4" id="check4" value="4"/>
    Check 5<input type="checkbox" name="check5" id="check5" value="5"/>
    <button>Submit</button>
</form>

jQuery:

$(document).ready(function(){
   var data = $('form').serialize();
   $.post('script.php', data, function(){
     //success!
   });
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文