小弟做了一个表格,在ID列上做了checkbox,value为当行的ID,然后在JS中用document.getElementById("c").value获得它的值。<input type="checkbox" name="c" value="{id}" onclick="getcheckboxvalue()">
<script>
function getcheckboxvalue(){
var a=document.getElementById("c").value;
window.location.href="getNewsList.do?checkboxvalue="+a;
}
</script>我想当点击选中一个checkbox时,用JS函数把checkbox的value中的id传到后台。。我在后台用request.getParameter("checkboxvalue");却怎么也取不到值。请问各位大侠,该怎么取,是我事件用的有问题吗?
<script>
function getcheckboxvalue(){
var a=document.getElementById("c").value;
window.location.href="getNewsList.do?checkboxvalue="+a;
}
</script>我想当点击选中一个checkbox时,用JS函数把checkbox的value中的id传到后台。。我在后台用request.getParameter("checkboxvalue");却怎么也取不到值。请问各位大侠,该怎么取,是我事件用的有问题吗?
<input type="checkbox" name="c" value="{id}" onclick="getcheckboxvalue(this.value)">JS代码这么写
<script>
function getcheckboxvalue(val){
window.location.href="getNewsList.do?checkboxvalue="+val;
}
</script>这样你在后台可以用request.getParameter("checkboxvalue");进行接收值了。。
看来楼主没明白getElementById的意思了。你要取值的这个控件一定在有ID才可以取到的。。
把你的这段html 。<input type="checkbox" name="c" value="{id}" onclick="getcheckboxvalue()">
改成 。<input type="checkbox" id="c" value="{id}" onclick="getcheckboxvalue()">就行了
客户端:
if (form1.c.checked){
do something
}
服务器:
if (Request.Form("c").Item=="on"){
do something
}
还有lz的id和name取值方法要正规一点吧。在传之前先alert看看。是单个值还是数组值。
function passcheckboxvalue(val){
alert("pppp"+val);//这里是可以拿到值的
}
function checkboxupdate(val){
var val=passcheckboxvalue(val);//这里拿不到,为什么呢?
alert("vvvvvv"+val);
window.location.href="tomodifyNews.do?method=tomodifyNews&newsid="+val;
}
function passcheckboxvalue(val){
alert("pppp"+val);//这里是可以拿到值的
}
function checkboxupdate(val){
var val=passcheckboxvalue(val);//这里拿不到,为什么呢?
alert("vvvvvv"+val);
window.location.href="tomodifyNews.do?method=tomodifyNews&newsid="+val;
}
<input type="button" value="修改" onclick="checkboxupdate()"/>
回楼上的兄弟,怪我代码没贴全.
在看看你的checkboxupdate
function checkboxupdate(val){
...
}
看出来了吧!
function passcheckboxvalue(val){
alert("pppp"+val);//这里是可以拿到值的
}
function checkboxupdate(){
var val=passcheckboxvalue(val);//这里拿不到,为什么呢?
alert("vvvvvv"+val);
window.location.href="tomodifyNews.do?method=tomodifyNews&newsid="+val;
}
<input type="button" value="修改" onclick="checkboxupdate()"/>
改了,这里还是拿不到值alert("vvvvvv"+val);
非要在checkboxupdate中拿val 可以这样写:
<input id ="cb" name="c" type="checkbox" value="真是费劲" onclick="passcheckboxvalue(this.value)">
<input type="button" value="修改" onclick="checkboxupdate()"/>
<script type="text/javascript">
function passcheckboxvalue(val) {
alert("pppp" + val);//这里是可以拿到值的
}
function checkboxupdate() {
//var val = passcheckboxvalue(val);//这里拿不到,为什么呢?
//alert("vvvvvv" + val);
var val = document.getElementById("cb").value;
alert(val);
// window.location.href = "tomodifyNews.do?method=tomodifyNews&newsid="
// + val;
}
</script>
//var val = passcheckboxvalue(val);//这里拿不到,为什么呢?
//alert("vvvvvv" + val);
var val = document.getElementById("cb").value;
alert(val);
// window.location.href = "tomodifyNews.do?method=tomodifyNews&newsid="
// + val;
}
这里用 var val = document.getElementById("cb").value;来取我就不用费这么大劲了.
我之所以定义function passcheckboxvalue(val){
alert("pppp"+val);//
}
是因为,checkbox肯定不是一个咯,我根据
<input id ="cb" name="c" type="checkbox" value="${info.id}" onclick="passcheckboxvalue(this.value)">
里的this.value来获得,当我选哪一个的时候,就得到它的value.
<input id ="cb" name="c" type="checkbox" value="${info.id}" onclick="passcheckboxvalue(this.value)">
function passcheckboxvalue(val){
alert("pppp"+val);//这里是可以拿到值的
}
function checkboxupdate(){
var val=passcheckboxvalue(val);//这里拿不到,为什么呢? 这里的val不知道是哪里来的,你没有传参数
alert("vvvvvv"+val);
window.location.href="tomodifyNews.do?method=tomodifyNews&newsid="+val;
}
<input type="button" value="修改" onclick="checkboxupdate()"/>----------------------------------------------------------------
<input id ="cb" name="c" type="checkbox" value="${info.id}" onclick="passcheckboxvalue(this.value)">
function passcheckboxvalue(val){
alert("pppp"+val);//这里是可以拿到值的,这里虽然可以取值,但是你没有把值保存起来,也没有传递给其它方法和属性
}
function checkboxupdate(){
var checkBoxVal = "";
var val= document.getElementsByName("c");
for (var i = 0; i < val.length; i++) {
if (val.checked) {
checkBoxVal += val.value + "";
}
}
alert("vvvvvv"+checkBoxVal);
window.location.href="tomodifyNews.do?method=tomodifyNews&newsid="+checkBoxVal;
}
<input type="button" value="修改" onclick="checkboxupdate()"/>
var val = null;
<script type="text/javascript">
var sVal = "";
function passcheckboxvalue(val) {
sVal += val+";";
alert(sVal);
}
function checkboxupdate() {
alert(sVal);
}
</script>
</head>
<body>
<input id="cb" name="c" type="checkbox" value="真是费劲1"
onclick="passcheckboxvalue(this.value)">
<input id="cb" name="c" type="checkbox" value="真是费劲2"
onclick="passcheckboxvalue(this.value)">
<input id="cb" name="c" type="checkbox" value="真是费劲3"
onclick="passcheckboxvalue(this.value)">
<input id="cb" name="c" type="checkbox" value="真是费劲4"
onclick="passcheckboxvalue(this.value)">
<input type="button" value="修改" onclick="checkboxupdate()" />