javascript - 无法从 <input> 获取值

标签 javascript jquery html

我有多个<input class="form-control inputDate" type="text" value="12/31/1899 7:00 PM">在一页上。我还有以下 JavaScript,

var inputs = jQuery('.inputDate');
for (var i = 0; i < inputs.length; i++) {
  console.log("test");
  jQuery(inputs[i]).val().split('/')[2];
  var input = jQuery(inputs[i]).val().split('/')[2];
  console.log("TEST" + input);
  if (input.length > 4) {
    input = input.split(" ")[0];
  }
  if (input < '2015') {
    jQuery(inputs[i]).val("");
  }
}

问题是 var input没有值(value)。我尝试打开控制台并进行测试(针对上面的 html),但没有任何值。

我已经尝试过了,

jQuery(inputs[i]).val();
jQuery(inputs[0]).val();
document.getElementsByClassName("inputDate")[0].value;

但是没有任何返回值。我认为部分问题在于该值在后端设置为 1899,而不是从 null 开始。

如何获取该值?

编辑------------------------------------------------

我做了更多测试,当我这样做

var test = inputs[0];
jQuery(test).val("123")

HTML 标记仍然显示日期。但如果我这样做(来自 IntheWeeds)

jQuery(".inputDate").each(function() {
   console.log($(this).val());
});

即使 HTML 标记中的值仍然是日期,它也会返回 123 和“”。

最佳答案

您没有访问那里的值属性。尝试一下

 var test = inputs[i];
 jQuery(test).val();

或者使用.each方法:

var inputs = jQuery('.inputDate');
jQuery(inputs).each( 
  jQuery(this).val().split('/')[2];
  // rest of the code don't forget to get rid of ending '}'

关于javascript - 无法从 &lt;input&gt; 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28458191/

相关文章:

javascript - 从谷歌地图返回可怕的 javascript-keys p[$a, ab]

javascript - 使用 Ajax 删除评论

javascript - Chrome 应用程序 : Cannot retrieve file load status

javascript - 使用 facebook 网络托管作为 Canvas 页面时,为什么我的资源没有被加载?

javascript - 将相邻的 <p> 元素包装到 <div> 中

javascript - 单击动态生成的链接时如何使用 jQuery 调用函数?

javascript - Jquery 在没有事件触发的情况下部分工作

javascript - Angular 可折叠 Accordion

javascript - 在 Bootstrap 中,为什么我禁用的按钮没有工具提示?

jquery - 无法让 jquery 恢复下拉菜单上的图像