您输入的文本中有一个name="quiztxtBox[]"
,如您所见,它是一个array
。如果某个文本框的值为null
,我想更改文本框的背景色。
var quiztxtBox = document.getElementById('quiztxtBox[]');
for (i=0; i<quiztxtBox.length; i++)
{
if (quiztxtBox[i].value == "")
{
alert('Either question or answer is empty.');
quiztxtBox[i].focus();
quiztxtBox[i].css({"background-color":"#f6d9d4"});
return false;
}
}
最佳答案
您正在使用.css()这是一个jQuery函数。
您应该在页面上包含jQuery,添加将DOM元素强制转换为jQuery对象,然后应用.css()函数,如下所示
另外,您应该使用getElementsByName
$(quiztxtBox[i]).css({..});
或仅使用香草JS,如下所示
var quiztxtBox = document.getElementByName('quiztxtBox[]');
for (i=0; i<quiztxtBox.length; i++) {
if (quiztxtBox[i].value === "") {
alert('Either question or answer is empty.');
quiztxtBox[i].focus();
quiztxtBox[i].style.backgroundColor = '#f6d9d4'; // this line
}
}
DEMO