Firefox奇怪的问题
Firefox weird issue
只有在Firefox上才会出现此错误:
全局作用域中ID/NAME引用的元素。请改用W3C标准文档.getElementById()。
if (c.checked == 1)
GFPart...vitate= (line 17)
TypeError: c is null
if (c.checked == 1)
我的Javascript是这样的:
<script type="text/javascript">
function SavePartners() {
var poz = '@ViewBag.Activity';
var rowCount = dataTable.rows.length;
var ala0 = "";
for (var i = 1; i < rowCount; i++) {
var c = document.getElementById("chkpart" + i);
if (c.checked == 1)
ala0 += dataTable.rows[i].cells[1].innerText + "^";
var ala = ala0.substring(0, ala0.length - 1);
}
$.ajax({
url: '@Url.Action("TPartners")',
data: { pozActivitate: poz, listapart: ala },
dataType: "Json",
type: "POST",
error: function () {
alert("Error");
},
success: function (data) {
window.close();
}
});
}
我的HTML看起来像这样(它是一个有2列的表,1列带有复选框,2列带有合作伙伴的名称)
<tr>
<td style="border-left: none;">
@if (listaDeTest.Activity!= 0)
{
string x = (from a in listaDeTest.PartenerName
where a == s
select a).FirstOrDefault();
if (x == null)
{
<input type="checkbox" name="chkpart @i" />
}
else
{
<input type="checkbox" name="chkpart @i" checked="checked"/>
}
}
else
{
<input type="checkbox" name="chkpart @i" />
}
</td>
<td>
<p style="margin-left: 5px;">@s</p>
</td>
</tr>
然后结束一个有onclick功能的按钮。有什么想法吗?因为在IE中工作非常完美。提前感谢
Internet Explorer和Chrome自动为具有"id"值的DOM元素生成全局变量。Firefox没有,因为没有标准规定它应该这样做(无论如何,这是一个愚蠢的想法)。
因此,在InternetExplorer中,页面上有一个HTML标签,如下所示:
<div id='container'>
...
</div>
意味着您还有一个名为"container"的全局变量(window
属性),其值是对该<div>
的DOM元素的引用。在Firefox中,你不会。你必须打电话给
var container = document.getElementById('container');
以获取对DOM元素的引用。
您的代码中不清楚Firefox抱怨的是什么引用;我怀疑它是"dataTable",我猜它是<table>
的id。但是你没有发布,所以我不确定。
编辑—哦,还有一件事:由于未知的原因,InternetExplorer从基于元素name的.getElementById()
调用中返回元素。Firefox或其他浏览器不会复制这种错误行为。您的输入元素有一个"name"属性,但没有"id"。
那么这个代码是做什么的呢?
var c = document.getElementById("chkpart" + i);
它在找身份证!现在看看你的代码,你遗漏了什么?
<input type="checkbox" name="chkpart @i" />
没有id!name属性不是id属性。
相关文章:
- Firefox奇怪的问题
- Firefox事件.目标问题
- 如果选项被禁用,则多个下拉菜单会导致FIREFOX出现问题
- firefox中的Javascript事件范围问题
- Firefox 15中的HTML5问题
- jQuery - 与 Firefox 的兼容性问题
- 我的Firefox插件和跨域https存在问题
- 俄罗斯木偶与Firefox和Webkit的显示问题:与IE配合良好
- Node.js/Socket.io适用于除Firefox之外的所有应用程序,这可能是缓存问题
- firefox中的浮动元素问题
- Firefox的问题是列出当前目录中的所有文件名
- Firefox与jquery.post的问题
- 在Firefox OS应用程序中滚动时出现渲染问题
- 我想使用的模板上的Firefox和IE的对齐问题
- Cookie不适用于Chrome,但它'使用Firefox(localhost)没问题
- 当内容显示在FireFox的iFrame中时,jQuery高度问题
- JavaScript单击并隐藏问题Firefox
- 使用angular js的验证问题(firefox上显示红色边框)
- 拖放问题firefox
- 单击“选择验证问题”(Firefox) 上的事件