javascript getElementById在chrome中给出错误,但在IE中工作正常
下面是我的Javascript函数:javascript getElementById在chrome中给出错误,但在IE中工作正常,javascript,getelementbyid,Javascript,Getelementbyid,下面是我的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
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.");
}
}
函数deleteAlert(tabstate){
var form=window.document.alertsForm;
var numOfElements=form.elements.length;
var okDelete=“false”;
对于(i=0;i
我在两个JSP中调用这个函数,这两个JSP的代码片段是相同的(注意相同的id值)
现在,这对IE8中的两个jsp都非常有效,但在chrome中,它为第二个jsp提供了一个错误:
未捕获的TypeError:无法读取未定义的属性“getElementById”
请帮忙。代替
form.document.getElementById('deleteAlertsButton').disabled=true;
试一试
而不是
form.document.getElementById('deleteAlertsButton').disabled=true;
试一试
您对form.document的引用不正确。“文件”在表单之外 因此,改变:
form.document.getElementById('deleteAlertsButton').disabled=true;
到
您对form.document的引用不正确。“文件”在表单之外 因此,改变:
form.document.getElementById('deleteAlertsButton').disabled=true;
到
警报窗体的方法是什么 尝试更改document.getElementById(),如下所示
document.getElementById('deleteAlertsButton').disabled=true;
警报表单的方法是什么 尝试更改document.getElementById(),如下所示
document.getElementById('deleteAlertsButton').disabled=true;
我认为您对form.document的引用不正确。“文档”在表单之外。为什么不使用window.document.getElementById('deleteAlertsButton')…我怀疑这可能与您将布尔值用作字符串有关。布尔值
true
与字符串值“true”
不同;同样地,false
不等于“false”
。您还使用松散的相等运算符==
进行比较,但应该使用严格的标识运算符==
。这可能会导致意外结果。我认为您对form.document的引用不正确。“文档”在表单之外。为什么不使用window.document.getElementById('deleteAlertsButton')…我怀疑这可能与您将布尔值用作字符串有关。布尔值true
与字符串值“true”
不同;同样地,false
不等于“false”
。您还使用松散的相等运算符==
进行比较,但应该使用严格的标识运算符==
。这可能会导致意外的结果。但是相同的javascript函数适用于其他jsp。但是相同的javascript函数适用于其他jsp。