我在頁面上有多個<input class="form-control inputDate" type="text" value="12/31/1899 7:00 PM">
。我也有以下javascript,無法從<input>獲得價值
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
沒有值。我試圖打開控制檯和測試(對上面的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());
});
它返回123和「」,即使HTML標記中的值仍然是日期。
,爲什麼不走一路和使用'each'方法循環的投入? – ndugger 2015-02-11 15:42:57
有趣的提示:jsFiddle似乎不能正確支持文本輸入的默認值。 – Skerkles 2015-02-11 15:43:49
嘗試:$ .each($(「。inputDate」),function(){ console.log($(this).val()); }); – 2015-02-11 15:45:12