$.each($('#income_ranges').children(), function(key, value) {
var field_row = value.getElementsByTagName("input");
$.each(field_row, function(key, value) {
if(value.value == "") {
value.appendChild("<div> cant be blank </div>");
}
})
})
我想将以下div附加到value上,但出现错误,指出value.appendChild不是一个函数。
在我的代码值是一个HTMLInputElement,我想在元素下面输入div,但是我得到了那个烦人的错误。
<input class="string required" id="lender_dsr_max_threshold_income_ranges_attributes_1437717712398_income_range" name="lender_dsr_max_threshold[income_ranges_attributes][1437717712398][income_range]" type="text">
任何帮助深表感谢
最佳答案
这里有两个问题,value
是输入元素,因此不能有子元素
appendChild将节点作为参数,而不是字符串
由于要在div
的后代input
之后添加#income_ranges
,因此请使用descendant selector(选择input
元素)和after()(将div作为input
插入的下一个兄弟姐妹)
$('#income_ranges input').filter(function () {
return this.value == ''
}).after('<div> cant be blank </div>')
关于javascript - javascript dom appendChild错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31603365/