页:
[1]
| goaler | 2006-11-15 03:18 PM |
|
checkbox用javascript取值问题
<form method=post action="b.php">
<input type="checkbox" name="test[]" value="v1">v1
<input type="checkbox" name="test[]" value="v2">v2
<input type="checkbox" name="test[]" value="v3">v3
<input type="checkbox" name="test[]" value="v4">v4
<input type="checkbox" name="test[]" value="v5">v5
<input type="submit">
</form>
用javascript如何取得选中的checkbox的值呢?求助!!! |
| sanders_yao | 2006-11-16 07:39 AM |
|
var inputObjects = document.getElementsByTagName("input");
var arrayValues = new Array;
for(var i = 0;i < inputObjects.length;i ++){
if("test[]" == inputObjects[i].name && false != inputObjects[i].checked){
arrayValues[arrayValues.length] = inputObjects[i].value;
}
}
没有经过测试 楼主自己试试看
[[i] 本帖最后由 sanders_yao 于 2006-11-16 03:41 PM 编辑 [/i]] |
| wuminghuo | 2006-11-17 06:08 AM |
|
正好手头上有这样的代码,和大家分享下
[b]取得radio,CheckBox,Select的JS函数。[/b]
[code]
function $(s) {return document.getElementById(s);}
function trim(s) {return s.replace(/(^[ | ]*)|([ | ]*$)/g, "");}
function $a(s) {return document.getElementsByName(s);}
function getRadioValue(name)
{
var arrObj = $a(name);
var arrLen = arrObj.length;
var value = false;
for (var i=0; i<arrLen; i++)
{
if (arrObj[i].checked){
value = arrObj[i].value;
break;
}
}
return value;
}
function getCheckBoxValue(id)
{
var obj = $(id);
if(obj.checked)
{
return obj.value;
}
return false;
}
function getSelectValue(id)
{
var oSel = $(id);
return oSel.options[oSel.selectedIndex].value;
}
function getValue(id)
{
var obj = $(id);
var tagName = obj.tagName;
switch(tagName)
{
case 'INPUT':
var oType = obj.type;
switch (oType)
{
case 'radio':
value = getRadioValue(id);
break;
case 'checkbox':
value = getCheckBoxValue(id);
break;
default :
value = obj.value;
break;
}
break;
case 'SELECT':
value = getSelectValue(id);
break;
case 'TEXTAREA':
value = obj.value;
break;
default :
value = false;
break;
}
return value;
}
[/code] |
| km3945 | 2006-11-20 01:17 AM |
|
getElementsByName
要遍历的东西太多. |
| sanders_yao | 2006-11-20 02:25 AM |
|
的确 如果能把name属性写成连续的数组表达式也好如:
<input type="checkbox" name="test[0]" value="v1">v1
<input type="checkbox" name="test[1]" value="v2">v2
这种html输出使用php很容易做 之后js只需要
for(var i=0;1;i++){
var obj = document.getElementById("test[" + i + "]");
if(null == obj){
break;
}
.........
}
这样遍历所有的checkbox |
Powered by Discuz! Archiver 6.1.0
© 2001-2006 Comsenz Inc.
Processed in 0.006917 second(s), 2 queries |