javascript - 将表单值提交给 JS 数组对象而不是 AJAX 请求

标签 javascript jquery ajax forms

我已经研究这个问题有一段时间了,但我就是无法理解它。有一些类似的答案,但似乎没有解决我的确切问题。

所以我有一个表格。由此得出的值都将是数字。我想捕获数组内的值,以便在使用新变量发送单独的 AJAX 调用之前对它们执行计算。我真的很惊讶这似乎很难发挥作用。

我的代码应该将表单的值输出到数组 x 中的键/值对中,但是该数组似乎是空的(包含每个表单名称/值的 {object Object} 对一对。

有什么想法吗?如果有更好的方法来实现这一点,我会洗耳恭听(或眼睛,无论如何!)。我想一个简单的方法是将其绑定(bind)到单击而不是提交事件,但我不想失去所有其他用户表单提交功能(按 Enter 等)。

Javascript:

$('#zombieForm').submit(function(event) {
    event.preventDefault()
    var x = $(":input").serializeArray();
    alert(x); //currently using a sandbox without console for this
});

HTML:

<form id="zombieForm" method="post">
    <select name="multi2" required>
        <option value=""></option>
        <option value="100">placeholder value 4</option>
        <option value="50">placeholder value 3</option>
        <option value="25">placeholder value 2</option>
        <option value="0">placeholder value 1</option>
    </select>
    <input type="submit" value="Submit" id="formButton" />
</form>

最佳答案

你可以做这样的事情。这就是你所追求的吗? Fiddle

$('#zombieForm').submit(function(event) {
    event.preventDefault();
    var yourArray = {};
    $.each($(this).serializeArray(), function() {
        yourArray[this.name] = this.value;
    });
    console.log(yourArray);
});

关于javascript - 将表单值提交给 JS 数组对象而不是 AJAX 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31886253/

相关文章:

java - Ajax 向 Servlet 发出请求时返回 404

javascript - 如何在开发和生产模式下的jQuery ajax请求中设置不同的baseUrl路径?

javascript - 如何使多个 div 动态占用 100% 的行宽?

javascript - 如何在不刷新页面的情况下更改 URI?

javascript - 在脚本标签中包含一个 javascript 文件

javascript - 单选按钮上的 jQuery 单击事件不会被触发

javascript - $.ajax 结合 $.ajaxSetup 默认设置

javascript - 模糊不会在 p 标签上触发

JQuery 上线并上线

javascript - 如何在 html 5 canvas 中删除区域的剪辑