求助 getElementsByName 在火狐下失效,IE9正常 本帖最后由 woaihanasd 于 2012-06-24 12:52:03 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 getElementsByName只能使用在表单元素里面,如input等。其他元素不能使用这是标准的规范,IE是往往不按国际规范做东西的 改document.getElementsById("td1"); getElementsByName不能取id属性的,必须是name属性的 var tableTD = document.getElementsByName("td"); var tableTD1 = document.getElementsByName("td1");我需要的是取出所有相同ID的 TD 标签。。 据说 TD 标签没有Name属性阿。 本帖最后由 net_lover 于 2012-06-24 13:14:15 编辑 id必须是唯一的,可以用class属性对元素进行“分组”:<table width="500" border="1" id="demo"> <tr> <td class="cellGroup1"> </td> <td class="cellGroup2"> </td> <td> </td> </tr> <tr> <td class="cellGroup1"> </td> <td> </td> <td class="cellGroup1"> </td> </tr></table><script type="text/javascript">var obj = document.getElementById('demo').getElementsByTagName('td');var group1 = [], group2 = [];for (var i = 0; i < obj.length; i ++) { if (obj[i].className == 'cellGroup1') group1.push(obj[i]); if (obj[i].className == 'cellGroup2') group2.push(obj[i]);}alert(group1.length); //3alert(group2.length); //1</script> 解决的办法。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <title></title> <script type="text/javascript"> //alert(1097 % 10); var Data = new Array(); var Data1 = new Array(); var yuShu = Data.length % 10; var HTML; function initialization() { var table = document.getElementById("table"); var tbody = document.createElement("tbody"); for (var i = 0; i < 10; i++) { var tr = document.createElement("tr"); var td = document.createElement("td"); var td1 = document.createElement("td"); td.id = "td"; td1.id = "td1"; tr.appendChild(td); tr.appendChild(td1); tbody.appendChild(tr); table.appendChild(tbody); } } function initable() { var tableTD = new Array(); var tableTD1 = new Array(); var obj = document.getElementsByTagName("td"); for (var index = 0; index < obj.length; index++) { //alert(obj[index].id); if (obj[index].id == "td") { tableTD[tableTD.length] = obj[index]; } else if (obj[index].id == "td1") { tableTD1[tableTD1.length] = obj[index]; } } //var tableTD = document.getElementsByName("td"); //var tableTD1 = document.getElementsByName("td1"); var sum = Data.length; for (var i = 0; i < 10; i++) { if (i >= Data.length) { break; } tableTD[i].innerHTML = Data1[sum-1]; tableTD1[i].innerHTML = Data[sum-1]; sum--; } } function show(b, o) { var tableTD = new Array(); var tableTD1 = new Array(); var obj = document.getElementsByTagName("td"); for (var index = 0; index < obj.length; index++) { //alert(obj[index].id); if (obj[index].id == "td") { tableTD[tableTD.length] = obj[index]; } else if (obj[index].id == "td1") { tableTD1[tableTD1.length] = obj[index]; } } for (var i = 0; i < 10; i++) { if (b >= Data.length) { tableTD[i].innerHTML = ""; tableTD1[i].innerHTML = ""; b++; } else { tableTD[i].innerHTML = Data1[b]; tableTD1[i].innerHTML = Data[b]; b++; } } } function fb(text) { Data1[Data.length] = Date(); Data[Data.length] = text; initable(); fenye(); } function fenye() { var div = document.getElementById("fy"); yuShu = Data.length % 10; var fenYeShu = (Data.length - yuShu) / 10; div.innerHTML = ""; for (var i = 1; i <= fenYeShu; i++) { var a = document.createElement("input"); a.type = "button"; a.onclick = spot; a.value = i + "0"; div.appendChild(a); //div.appendChild( ); } if (yuShu > 0) { var a = document.createElement("input"); a.type = "button"; a.onclick = spot; a.value = fenYeShu * 10 + yuShu; div.appendChild(a); } } function spot(event) { var obj = event.srcElement ? event.srcElement : event.target; if (obj.value % 10 > 0) { show(obj.value - yuShu, obj.value); } else { show(obj.value - 10, obj.value); } } </script></head><body onload="initialization()"><input type="text" id="texts" /><input type="button" onclick="fb(document.getElementById('texts').value)" value="发表评论"/><table id="table" border="1"></table><div id="fy"></div></body></html> 根据你的方法我做了一下修改,你看是不是可以,也谢谢你的提醒,因为是初学者,所以很多常识并不知道,见谅。。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <title></title> <script type="text/javascript"> var Data = new Array(); var Data1 = new Array(); var yuShu = Data.length % 10; var HTML; function initialization() { var table = document.getElementById("table"); var tbody = document.createElement("tbody"); for (var i = 0; i < 10; i++) { var tr = document.createElement("tr"); var td = document.createElement("td"); var td1 = document.createElement("td"); td.class = "td"; td1.class = "td1"; tr.appendChild(td); tr.appendChild(td1); tbody.appendChild(tr); table.appendChild(tbody); } } function initable() { var tableTD = new Array(); var tableTD1 = new Array(); var obj = document.getElementsByTagName("td"); for (var index = 0; index < obj.length; index++) { if (obj[index].class == "td") { tableTD[tableTD.length] = obj[index]; } else if (obj[index].class == "td1") { tableTD1[tableTD1.length] = obj[index]; } } var sum = Data.length; for (var i = 0; i < 10; i++) { if (i >= Data.length) { break; } tableTD[i].innerHTML = Data1[sum - 1]; tableTD1[i].innerHTML = Data[sum - 1]; sum--; } } function show(b, o) { var tableTD = new Array(); var tableTD1 = new Array(); var obj = document.getElementsByTagName("td"); for (var index = 0; index < obj.length; index++) { if (obj[index].class == "td") { tableTD[tableTD.length] = obj[index]; } else if (obj[index].class == "td1") { tableTD1[tableTD1.length] = obj[index]; } } for (var i = 0; i < 10; i++) { if (b >= Data.length) { tableTD[i].innerHTML = ""; tableTD1[i].innerHTML = ""; b++; } else { tableTD[i].innerHTML = Data1[b]; tableTD1[i].innerHTML = Data[b]; b++; } } } function fb(text) { Data1[Data.length] = Date(); Data[Data.length] = text; initable(); fenye(); } function fenye() { var div = document.getElementById("fy"); yuShu = Data.length % 10; var fenYeShu = (Data.length - yuShu) / 10; div.innerHTML = ""; for (var i = 1; i <= fenYeShu; i++) { var a = document.createElement("input"); a.type = "button"; a.onclick = spot; a.value = i + "0"; div.appendChild(a); //div.appendChild( ); } if (yuShu > 0) { var a = document.createElement("input"); a.type = "button"; a.onclick = spot; a.value = fenYeShu * 10 + yuShu; div.appendChild(a); } } function spot(event) { var obj = event.srcElement ? event.srcElement : event.target; if (obj.value % 10 > 0) { show(obj.value - yuShu, obj.value); } else { show(obj.value - 10, obj.value); } } </script></head><body onload="initialization()"><input type="text" id="texts" /><input type="button" onclick="fb(document.getElementById('texts').value)" value="发表评论"/><table id="table" border="1"></table><div id="fy"></div></body></html> td.className = "td"; td1.className = "td1";...if (obj[index].className == "td") {else if (obj[index].className == "td1") { className 和 class 之间的区别为何可以使用,请指教。 html中写class="xx"js里面必须写className="xx" class是html标签的属性名,对应的DOM对象属性名是className。<div id="demo" class="test"></div><script type="text/javascript">var o = document.getElementById('demo');alert(o.className); //获取o.className = 'demo'; //设置</script> 求高手js 修改代码 IIS下activex控件没有提示没有反应。 求一大于等于-1整数的正则式,谢谢 如何引入jqgrid 一个关于下拉框和列表框绑定的简单问题 一个js的看似简单问题 主页中选中下拉框中"other"值时就弹出一页面,输入值后按submit传回该值(到主页面),加在下拉框的菜单中,用javascript怎么做? 我要做一个浮动按钮,让他始终在屏幕的底端,以便正滚屏,怎么实现! 请教 请问在弹出窗口的网页里是如何使父窗口涮新呢 如何用js屏蔽按回车提交表单 jquery选择元素的问题
这是标准的规范,IE是往往不按国际规范做东西的
document.getElementsById("td1");
var tableTD = document.getElementsByName("td");
var tableTD1 = document.getElementsByName("td1");
我需要的是取出所有相同ID的 TD 标签。。
据说 TD 标签没有Name属性阿。
id必须是唯一的,可以用class属性对元素进行“分组”:
<table width="500" border="1" id="demo">
<tr>
<td class="cellGroup1"> </td>
<td class="cellGroup2"> </td>
<td> </td>
</tr>
<tr>
<td class="cellGroup1"> </td>
<td> </td>
<td class="cellGroup1"> </td>
</tr>
</table>
<script type="text/javascript">
var obj = document.getElementById('demo').getElementsByTagName('td');
var group1 = [], group2 = [];
for (var i = 0; i < obj.length; i ++) {
if (obj[i].className == 'cellGroup1') group1.push(obj[i]);
if (obj[i].className == 'cellGroup2') group2.push(obj[i]);
}
alert(group1.length); //3
alert(group2.length); //1
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
//alert(1097 % 10);
var Data = new Array();
var Data1 = new Array();
var yuShu = Data.length % 10;
var HTML;
function initialization() {
var table = document.getElementById("table");
var tbody = document.createElement("tbody");
for (var i = 0; i < 10; i++) {
var tr = document.createElement("tr");
var td = document.createElement("td");
var td1 = document.createElement("td");
td.id = "td";
td1.id = "td1";
tr.appendChild(td);
tr.appendChild(td1);
tbody.appendChild(tr);
table.appendChild(tbody);
}
} function initable() {
var tableTD = new Array();
var tableTD1 = new Array();
var obj = document.getElementsByTagName("td");
for (var index = 0; index < obj.length; index++) {
//alert(obj[index].id);
if (obj[index].id == "td") {
tableTD[tableTD.length] = obj[index];
}
else if (obj[index].id == "td1") {
tableTD1[tableTD1.length] = obj[index];
} }
//var tableTD = document.getElementsByName("td");
//var tableTD1 = document.getElementsByName("td1");
var sum = Data.length;
for (var i = 0; i < 10; i++) {
if (i >= Data.length) {
break;
}
tableTD[i].innerHTML = Data1[sum-1];
tableTD1[i].innerHTML = Data[sum-1];
sum--;
}
}
function show(b, o) {
var tableTD = new Array();
var tableTD1 = new Array();
var obj = document.getElementsByTagName("td");
for (var index = 0; index < obj.length; index++) {
//alert(obj[index].id);
if (obj[index].id == "td") {
tableTD[tableTD.length] = obj[index];
}
else if (obj[index].id == "td1") {
tableTD1[tableTD1.length] = obj[index];
} }
for (var i = 0; i < 10; i++) {
if (b >= Data.length) {
tableTD[i].innerHTML = "";
tableTD1[i].innerHTML = "";
b++;
}
else {
tableTD[i].innerHTML = Data1[b];
tableTD1[i].innerHTML = Data[b];
b++;
}
}
}
function fb(text) {
Data1[Data.length] = Date();
Data[Data.length] = text;
initable();
fenye();
}
function fenye() {
var div = document.getElementById("fy");
yuShu = Data.length % 10;
var fenYeShu = (Data.length - yuShu) / 10;
div.innerHTML = "";
for (var i = 1; i <= fenYeShu; i++) {
var a = document.createElement("input");
a.type = "button";
a.onclick = spot;
a.value = i + "0";
div.appendChild(a);
//div.appendChild( );
}
if (yuShu > 0) {
var a = document.createElement("input");
a.type = "button";
a.onclick = spot;
a.value = fenYeShu * 10 + yuShu;
div.appendChild(a);
}
} function spot(event) {
var obj = event.srcElement ? event.srcElement : event.target;
if (obj.value % 10 > 0) {
show(obj.value - yuShu, obj.value);
}
else {
show(obj.value - 10, obj.value);
}
} </script>
</head>
<body onload="initialization()">
<input type="text" id="texts" />
<input type="button" onclick="fb(document.getElementById('texts').value)" value="发表评论"/>
<table id="table" border="1"></table>
<div id="fy"></div>
</body>
</html>
根据你的方法我做了一下修改,你看是不是可以,也谢谢你的提醒,因为是初学者,所以很多常识并不知道,见谅。。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
var Data = new Array();
var Data1 = new Array();
var yuShu = Data.length % 10;
var HTML;
function initialization() {
var table = document.getElementById("table");
var tbody = document.createElement("tbody");
for (var i = 0; i < 10; i++) {
var tr = document.createElement("tr");
var td = document.createElement("td");
var td1 = document.createElement("td");
td.class = "td";
td1.class = "td1";
tr.appendChild(td);
tr.appendChild(td1);
tbody.appendChild(tr);
table.appendChild(tbody);
}
} function initable() {
var tableTD = new Array();
var tableTD1 = new Array();
var obj = document.getElementsByTagName("td");
for (var index = 0; index < obj.length; index++) {
if (obj[index].class == "td") {
tableTD[tableTD.length] = obj[index];
}
else if (obj[index].class == "td1") {
tableTD1[tableTD1.length] = obj[index];
} }
var sum = Data.length;
for (var i = 0; i < 10; i++) {
if (i >= Data.length) {
break;
}
tableTD[i].innerHTML = Data1[sum - 1];
tableTD1[i].innerHTML = Data[sum - 1];
sum--;
}
}
function show(b, o) {
var tableTD = new Array();
var tableTD1 = new Array();
var obj = document.getElementsByTagName("td");
for (var index = 0; index < obj.length; index++) {
if (obj[index].class == "td") {
tableTD[tableTD.length] = obj[index];
}
else if (obj[index].class == "td1") {
tableTD1[tableTD1.length] = obj[index];
} }
for (var i = 0; i < 10; i++) {
if (b >= Data.length) {
tableTD[i].innerHTML = "";
tableTD1[i].innerHTML = "";
b++;
}
else {
tableTD[i].innerHTML = Data1[b];
tableTD1[i].innerHTML = Data[b];
b++;
}
}
}
function fb(text) {
Data1[Data.length] = Date();
Data[Data.length] = text;
initable();
fenye();
}
function fenye() {
var div = document.getElementById("fy");
yuShu = Data.length % 10;
var fenYeShu = (Data.length - yuShu) / 10;
div.innerHTML = "";
for (var i = 1; i <= fenYeShu; i++) {
var a = document.createElement("input");
a.type = "button";
a.onclick = spot;
a.value = i + "0";
div.appendChild(a);
//div.appendChild( );
}
if (yuShu > 0) {
var a = document.createElement("input");
a.type = "button";
a.onclick = spot;
a.value = fenYeShu * 10 + yuShu;
div.appendChild(a);
}
} function spot(event) {
var obj = event.srcElement ? event.srcElement : event.target;
if (obj.value % 10 > 0) {
show(obj.value - yuShu, obj.value);
}
else {
show(obj.value - 10, obj.value);
}
} </script>
</head>
<body onload="initialization()">
<input type="text" id="texts" />
<input type="button" onclick="fb(document.getElementById('texts').value)" value="发表评论"/>
<table id="table" border="1"></table>
<div id="fy"></div>
</body>
</html>
td1.className = "td1";
...if (obj[index].className == "td") {
else if (obj[index].className == "td1") {
className 和 class 之间的区别为何可以使用,请指教。
js里面必须写className="xx"
<div id="demo" class="test"></div>
<script type="text/javascript">
var o = document.getElementById('demo');
alert(o.className); //获取
o.className = 'demo'; //设置
</script>