我有一个包含多个字段的表单,包括一个使用<ul data-role="listview">
的远程自动填充字段,如jQuery Mobile 1.4.2文档状态。在桌面视图中,我正在使用带有jQuery UI自动完成功能的<input>
字段。我在<ul>
移动自动填充字段上收到jQuery验证错误,因为jQM创建的<input>
字段不包含该值。顺便说一句,我正在使用MVC 5进行不引人注目的验证。
这是我正在使用的jQuery Mobile HTML代码:
<div data-role="page" id="myPage">
<div id="myFormDiv" class="ui-content" data-theme="a" role="main">
<form id="myForm" method="post" data-ajax="False" action="/MyController/SetVal">
<div class="validation-summary-errors">
<table>
<tbody>
<tr>
<td class="myInput">
<ul id="field1" data-role="listview" data-inset="true" data-filter="true"></ul>
</td>
</tr>
</tbody>
</table>
</div>
<input type="submit" id="done" name="btnSubmit" value="Done" data-mini="true" data-inline="true" data-theme="a" />
</form>
</div>
</div>
我正在通过JS处理表单POST,如下所示:
$.post($form.attr('action'), $form.serializeArray()) // ... code snipped
我发现 field1 的表单数据没有出现,因为jQM为<input>
标记创建的<ul>
字段不包含值属性。
是否可以使用jQM 1.4远程自动完成列表视图进行表单提交?
答案 0 :(得分:1)
我通过在<input>
标记下面放置一个隐藏的<td class="myInput">
并在选择listview项目时设置隐藏输入的值来解决这个问题。