我使用jquery模板在同一页面上动态生成多个元素。每个元素看起来如下所示
<div id ="DynamicValueAssignedHere">
<div class="something">Hello world</div>
<div class="formdiv">
<form name="inpForm">
<input type="text" name="FirstName" />
<input type="submit" value="Submit" />
</form>
</div>
</div>
我想使用Jquery在提交时处理表单。如果出现错误,我还希望将表单值恢复为以前的值。我的问题是如何使用Jquery获取输入框的值?例如,我可以使用类"something“获取div的值,方法是:
var something = $(#DynamicValueAssignedHere).children(".something").html();
以类似的方式,我希望能够检索文本框的值。现在,我试着
var text = $(#DynamicValueAssignedHere).children(".formdiv").findnext('input[name="FirstName"]').val();
但它似乎不起作用
发布于 2012-07-26 00:36:32
您必须使用value attribute
来获取它的值
<input type="text" name="FirstName" value="First Name" />
试一下-
var text = $('#DynamicValueAssignedHere').find('input[name="FirstName"]').val();
发布于 2012-07-26 00:36:04
它可以比你正在做的事情简单得多。
HTML:
<input id="myField" type="text" name="email"/>
JavaScript:
// getting the value
var email = $("#myField").val();
// setting the value
$("#myField").val( "new value here" );
发布于 2015-11-16 22:42:10
另一种方法,不搜索域html:
var $form = $('#' + DynamicValueAssignedHere).find('form');
var formData = $form.serializeArray();
var myFieldName = 'FirstName';
var myFieldFilter = function (field) {
return field.name == myFieldName;
}
var value = formData.filter(myFieldFilter)[0].value;
https://stackoverflow.com/questions/11654449
复制相似问题