对javascript不熟,想实现一个想必对大家来讲很初浅的问题:如何在在选中了“全选”的checkbox后,表格内的checkbox都自动选上。换句话说,我就是不知道怎么得到这个rows[i]内的那个checkbox。
================
function doSelectAll(obj)
{
var mBody = document.getElementById("DataGrid_log");
if(obj.checked)
{
for(i=1;i<mBody.rows.length;i++)
{
mBody.rows[i].style.backgroundColor = "#222222";(全部变背景色)
?????(这里如何写,要求实现每一行中位于第4列内的一个checkbox被选中)
}
}
else
{
for(j=1;j<mBody.rows.length;j++)
{
mBody.rows[j].style.backgroundColor = "#404040";
???????[每行的checkbox都不被选中]
}
}
}
========================
另外,想请问大家,有没有类似.net那样的java的开发环境啊,比如我打个.它的类啊、属性啊就自动全出来了。谢谢!
================
function doSelectAll(obj)
{
var mBody = document.getElementById("DataGrid_log");
if(obj.checked)
{
for(i=1;i<mBody.rows.length;i++)
{
mBody.rows[i].style.backgroundColor = "#222222";(全部变背景色)
?????(这里如何写,要求实现每一行中位于第4列内的一个checkbox被选中)
}
}
else
{
for(j=1;j<mBody.rows.length;j++)
{
mBody.rows[j].style.backgroundColor = "#404040";
???????[每行的checkbox都不被选中]
}
}
}
========================
另外,想请问大家,有没有类似.net那样的java的开发环境啊,比如我打个.它的类啊、属性啊就自动全出来了。谢谢!
---->
var mBody = document.getElementsByName("DataGrid_log");
byId 总是只返回第一个.
http://www.blindprogramming.com/ftp/internet/ClientReferenceJS13.zip
http://www.blindprogramming.com/ftp/internet/ClientGuideJS13.zip
http://doc.rz.ifi.lmu.de/web/js/CoreReferenceJS15/CoreReferenceJS15.zip
http://doc.rz.ifi.lmu.de/web/js/CoreGuideJS15/CoreGuideJS15.zip
http://www.hubert.idv.tw/issue/javascript/ref/CoreReferenceJS14.pdf
http://janroman.net.dhis.org/pdf/CoreGuideJS14.pdf
http://janroman.net.dhis.org/pdf/ClientReferenceJS13.pdf
http://janroman.net.dhis.org/pdf/ClientGuideJS13.pdf
http://www.w3.org/TR/2002/WD-DOM-Level-3-LS-20020725/DOM3-LS.pdf
http://www.mozilla.org/js/language/E262-3.pdf
http://www.blindprogramming.com/ftp/internet/CoreGuideJS14.zip
<input id="c1" type="checkbox" name="C1" value="ON">
<input id="c2" type="checkbox" name="C2" value="ON">然后在javascript里面
var m1 = document.getElementById("c1");
m1.checked="true";
var m2 = document.getElementById("c2");
m2.checked="true";
var mBody = document.getElementById("DataGrid_log");
---->
var mBody = document.getElementsByName("DataGrid_log");
byId 总是只返回第一个.==========================
先谢谢一下,不过这里DataGrid_log是DataGrid啊,本来就只有一个啊?我要选中的checkBox是在该DataGrid内的每一行的某列里面的。****************************************
回复人: masse(当午) :
难道不能用循环实现吗?比如变色的那句:mBody.rows[i].style.backgroundColor = "#222222";****************************************
先谢,我试试再说~~
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>New Page 1</title>
</head><body><form method="POST" action="--WEBBOT-SELF--">
<!--webbot bot="SaveResults"
U-File="C:\Documents and Settings\xukf.RD\桌面\_private\form_results.txt"
S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->
<p><input id="c1" type="checkbox" name="C1" value="ON"></p>
<p><input id="c2" type="checkbox" name="C2" value="ON"></p>
<p><input id="c3" type="checkbox" name="C3" value="ON"></p>
<p><input id="c4" type="checkbox" name="C4" value="ON" onclick="func()"></p>
<p><input type="submit" value="提交" name="B1"><input type="reset" value="全部重写" name="B2"></p>
</form>
<script type='text/javascript'>
function func(){
var i=1;
while(true){
var body = document.getElementById("c"+i);
if(body==null) break;
body.checked=true;
i++;
}
}
</script>
</body></html>
你可以循环遍历这个数组,然后将他们设为选中状态。
我现在没时间,一会给你把 代码贴上来。
<p><input id="c1" type="checkbox" name="C1" value="ON"></p>
<p><input id="c2" type="checkbox" name="C2" value="ON"></p>
<p><input id="c3" type="checkbox" name="C3" value="ON"></p>
<p><input id="c4" type="checkbox" name="C4" value="ON" onclick="func()"></p>
<p><input type="submit" value="提交" name="B1"><input type="reset" value="全部重写" name="B2"></p>
不过你还是给了我提示,就是采用getElementById("c"+i),我再试试,因为web控件在产生前置代码后,其实还是有ClientID的。我再试试啊~~谢谢
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>New Page 1</title>
</head><body><form method="POST" action="--WEBBOT-SELF--">
<!--webbot bot="SaveResults"
U-File="C:\Documents and Settings\xukf.RD\桌面\_private\form_results.txt"
S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->
<p><input id="c1" type="checkbox" name="C" value="ON"></p>
<p><input id="c2" type="checkbox" name="C" value="ON"></p>
<p><input id="c3" type="checkbox" name="C" value="ON"></p>
<p><input id="c4" type="checkbox" name="C" value="ON" onclick="func()"></p>
<p><input type="submit" value="提交" name="B1"><input type="reset" value="全部重写" name="B2"></p>
</form>
<script type='text/javascript'>
function func(){
if (document.all) {
for (var i = 0; i < )
var body = document.getElementById("c"+i);
if(body==null) break;
body.checked=true;
i++;
}
}
}
</script>
</body></html>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>New Page 1</title>
</head><body><form method="POST" action="--WEBBOT-SELF--">
<!--webbot bot="SaveResults"
U-File="C:\Documents and Settings\xukf.RD\?面\_private\form_results.txt"
S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->
<p><input id="c1" type="checkbox" name="C" value="ON"></p>
<p><input id="c2" type="checkbox" name="C" value="ON"></p>
<p><input id="c3" type="checkbox" name="C" value="ON"></p>
<p><input id="c4" type="checkbox" name="C" value="ON" onclick="func()"></p>
<p><input type="submit" value="提交" name="B1"><input type="reset" value="全部重写" name="B2"></p>
</form>
<script type='text/javascript'>
function func(){
if (document.all) {
var objs = document.getElementByName();
if (objs.length) {
for (var i = 0; i < objs.length; i ++ )
objs[i].checked = true;
}
} else {
objs.checked = true;
}
}
}
</script>
</body></html>
因为在我的代码中,都已经循环到行了,我又知道它在第4列,觉得应该有方法不必去整个document.getElementByID的吧。
<HTML>
<SCRIPT LANGUAGE="JavaScript">
<!--
function checkall(){
var huang = document.all['huang'];
for(i = 0;i < huang.length;i++){
huang[i].checked = true;
}
}
function centerall(){
var huang = document.all['huang'];
for(i = 0;i < huang.length;i++){
huang[i].checked = false;
}
}
//-->
</SCRIPT>
<BODY>
<input type="checkbox" name="huang" value="ON">
<input type="checkbox" name="huang" value="OFF">
<br>
<input type="button" value = "checkall" onclick = "checkall();">
<input type="button" value = "centerall" onclick = "centerall();">
</BODY>
</HTML>