javascript - 如何使用jquery获取特定部分的表单数据

标签 javascript jquery knockout.js

为了清楚地定义问题,请考虑这个例子。

<form id='myform'>
    <div id='location'>
            <input type='text' name='username'>
    </div>
    <div id='background' style='display:none'>
            <input type='text' name='username'>
    </div>
    <div id='family' style='display:none'>
            <input type='text' name='username'>
    </div>
</form>

好的。现在我想做的是创建一个编辑表单。首先,我在页面上显示每一项用户数据。用户数据已分为这样的部分

Location
VisualAppearance
Background
Family
EducationAndCareer
Lifestyle
AdditionalQuestions

现在,例如位置部分包含一些有关用户位置的信息,例如

country , city , zip , state

每个项目(例如国家/地区)都包含一个箭头。单击箭头时,我使用获取参数 ?item=location 将用户发送到另一个页面。在文档准备好后,我会看到 get 中的内容,然后填写相关字段并显示所需的部分。加载所需的下拉菜单并在其中选择项目。现在我想用ajax发布数据。如果我使用 $('form').serialize() 它将发送带有我不想要的空值的所有部分信息。因为其他部分被隐藏并且没有加载。我只想发送此 scanrio 中位置的数据。我怎样才能做到这一点。

我正在从事移动工作。我为此使用 jquery 和 knockout 。

最佳答案

您可以使用简单的 CSS 选择器让 jQuery serialize() 仅显示表单的一部分:

$('#location :input').serialize()

参见Fiddle .

关于javascript - 如何使用jquery获取特定部分的表单数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19355887/

相关文章:

javascript - html表格的 float 水平滚动条

javascript - 提交按钮在执行 1 个功能后不会发布数据

javascript - 如何使用jquery获取屏幕的 'height'

javascript - 对knockout.js json数据执行jquery

javascript - 如何每 10 秒发出一次 Ajax 请求(长轮询除外)?

javascript - 在 IE 7 中意外调用方法或属性访问

javascript - 使用自定义方法替换 native 对象(数组)方法 : Is it safe? 兼容吗?

javascript - 从 block webpack 4 中排除某些模块

jquery - 为什么 Chrome 在隐藏大型 Knockout 元素时会使用更多 CPU?

javascript - Knockout 将可观察数组与另一个 ViewModel 关联起来