javascript getElementById 在 chrome 中给出错误,但在 IE 中工作正常
javascript getElementById gives error in chrome but works fine in IE
这是我的 Javascript 函数:
function deleteAlert(tabstate){
var form = window.document.alertsForm;
var numOfElements = form.elements.length;
var okDelete = "false";
for (i=0; i < numOfElements; i++)
{
if(form.elements[i].checked)
{
okDelete = "true";
break;
}else{
okDelete = "false";
}
}
if(okDelete == "true")
{
//changPage("Screen1b.html"); only for prototype
form.action="/cpi/producer/myAlerts/alertsGateway?jadeAction=MA06&tab="+tabstate;
form.document.getElementById('deleteAlertsButton').disabled=true;
form.submit();
}else{
alert("Please select one or more items to delete.");
}
}
我在两次 jsp 中调用此函数,两者的代码片段相同(注意相同的 id 值)
<input type=button value="Delete" id="deleteAlertsButton" title="Delete" class=fbutton onclick="javascript:deleteAlert('<%=state %>');">
现在这对 IE8 中的两个 jsp 都很完美,但在 chrome 中,它给出了第二个 jsp 的错误:
未捕获的类型错误:无法读取未定义的 属性 'getElementById'
请帮忙。
而不是
form.document.getElementById('deleteAlertsButton').disabled=true;
尝试
document.getElementById('deleteAlertsButton').disabled=true;
您对 form.document 的引用不正确。 "document"在表格外
所以改变:
form.document.getElementById('deleteAlertsButton').disabled=true;
至
document.getElementById('deleteAlertsButton').disabled=true;
alertsForm的方法是什么?
像这样尝试改变 document.getElementById()
document.getElementById('deleteAlertsButton').disabled=true;
这是我的 Javascript 函数:
function deleteAlert(tabstate){
var form = window.document.alertsForm;
var numOfElements = form.elements.length;
var okDelete = "false";
for (i=0; i < numOfElements; i++)
{
if(form.elements[i].checked)
{
okDelete = "true";
break;
}else{
okDelete = "false";
}
}
if(okDelete == "true")
{
//changPage("Screen1b.html"); only for prototype
form.action="/cpi/producer/myAlerts/alertsGateway?jadeAction=MA06&tab="+tabstate;
form.document.getElementById('deleteAlertsButton').disabled=true;
form.submit();
}else{
alert("Please select one or more items to delete.");
}
}
我在两次 jsp 中调用此函数,两者的代码片段相同(注意相同的 id 值)
<input type=button value="Delete" id="deleteAlertsButton" title="Delete" class=fbutton onclick="javascript:deleteAlert('<%=state %>');">
现在这对 IE8 中的两个 jsp 都很完美,但在 chrome 中,它给出了第二个 jsp 的错误: 未捕获的类型错误:无法读取未定义的 属性 'getElementById'
请帮忙。
而不是
form.document.getElementById('deleteAlertsButton').disabled=true;
尝试
document.getElementById('deleteAlertsButton').disabled=true;
您对 form.document 的引用不正确。 "document"在表格外
所以改变:
form.document.getElementById('deleteAlertsButton').disabled=true;
至
document.getElementById('deleteAlertsButton').disabled=true;
alertsForm的方法是什么?
像这样尝试改变 document.getElementById()
document.getElementById('deleteAlertsButton').disabled=true;