jQuery,检测实际的输入文本值

皮特_1

我遇到了一个问题,jQuery所获取的值与输入文本字段中的实际值不同。

当页面加载来自我们数据库的信息时,将填充具有各种输入的表单。因此,输入文本字段均具有值。

提交表单后,我有一个函数首先运行以检查文本输入。这是该功能的一部分:

$("form#accountSettingsForm input").each(function(){
var input = $(this);
var value = input.attr("value");
}

假设最初加载页面时输入值为12。如果我在文本框中删除12,并将字段保留为空,然后提交表单,则上面获取的代码“ value”仍为12,而不是空。如何检测文本框的实际值?提前致谢。

巴尔玛

在这种情况下,value attributevalue property之间存在差异属性来自HTML,属性来自DOM的动态状态。要在用户修改输入后获取当前值,请使用jQuery.val()方法。

$("#accountSettingsForm").submit(function() {
  $(this).find("input").each(function() {
    var input = $(this);
    var value = input.val();
    console.log(this.name + " = " + value);
  });
  return false;
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form id="accountSettingsForm">
  Input 1:
  <input name="field1" type="text">
  <br>Input 2:
  <input name="field2" type="text">
  <br>
  <input name="submit" type="submit">
</form>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章