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

时间:2013-10-14 08:08:33

标签: 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

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

我正在为移动设备工作。我正在使用jquery和knockout。

1 个答案:

答案 0 :(得分:1)

你可以使用简单的CSS选择器让jQuery serialize()只是表单的一部分:

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

请参阅Fiddle