php - jQuery Ajax 表单仅发送几个复选框值中的最后一个

标签 php javascript jquery

我正在尝试使用 jQuery 的 $.ajax() 函数提交一个表单并且它可以工作,除了它只发送几个复选框中最后一个的值这一事实,而不管我检查了多少。如果有人能告诉我我做错了什么,我将不胜感激。提前致谢!

HTML 表单:

<form name="contactFormSmall" id="contactFormSmall" action="" method="post">
    <input type="text" name="textfieldname" value="textfieldvalue" />
    <input type="checkbox" name="checkboxes" value="Testvalue One" checked="checked" />
    <input type="checkbox" name="checkboxes" value="Testvalue Two" checked="checked" />
    <input type="checkbox" name="checkboxes" value="Testvalue Three" checked="checked" />
</form>

这是处理表单的 jQuery:

var fields = $(":input").serializeArray();

$.ajax({
    type: "POST",
    contentType: "application/x-www-form-urlencoded;charset=ISO-8859-15",
    url: "includes/contact_process_small.php",
    data: fields,
    success: function(data) {
        $('#contactFormSmall').hide();
        $("#formFeedback").html(data).show();
    }

});

这是 php 脚本中 print_r($_POST) 的结果:

Array
(
    [textfieldname] => textfieldvalue
    [checkboxes] => Testvalue Three
)

最佳答案

name="checkboxes" 仅在单个元素上是正确的,您必须使用 name="checkboxes[]"

关于php - jQuery Ajax 表单仅发送几个复选框值中的最后一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8590664/

相关文章:

javascript - jQuerys $.each() 是如何工作的?

php - 使用三元条件的两个 if 语句

php - 如果主数据库关闭,则 Codeigniter 切换到辅助数据库

JavaScript:如何访问 Windows 操作系统中的系统窗口

c# - 将 Json 字符串转换为 C# 对象列表

javascript - 使用ajax提交multipart/form-data时,文件为空

php - Laravel facade Slug 不适用于非英语语言?

c# - WCF 可以使用 https 访问 SOAP 1.1 服务吗?

javascript - jQuery - 在其他地方访问序列化数据

javascript - JQuery AJAX 调用函数运行两次