当前位置:编程学习 > JAVA >>

js改变input元素的值

function checkmb(obj){
var mb=obj;
if(mb==1){
document.getElementsByName("template").value="1";
}else if(mb==2){
document.getElementsByName("template").value="2";
}else if(mb==3){
document.getElementsByName("template").value="3";
}else if(mb==4){
document.getElementsByName("template").value="4";
}
}
选择某个模板就将input元素,名字为template的value赋值为相应的值,但是这个值传给后台为什么没有变?求大神指导。
--------------------编程问答-------------------- 你咋传到后台的,后台又是如何得到的? --------------------编程问答--------------------
var mb=obj;
这里的,obj里是什么东西? --------------------编程问答-------------------- debug看一下是不是确实赋值了。
再看看后台如何接收 --------------------编程问答-------------------- document.getElementsByName("template")  这个是数组你嘚索引。 --------------------编程问答-------------------- 感觉,是你的obj取值没取到吧,你可以试验下。点击你的那个控件等于1时。你可以alert(mb==1)一下这个,看看是什么值,是否是true? --------------------编程问答--------------------
引用 3 楼 海龙 的回复:
debug看一下是不是确实赋值了。
再看看后台如何接收

娜姐,你换小号来抢分 --------------------编程问答--------------------  
<html>
<head>
<script type="text/javascript">
function getElements()
  {
   document.getElementsByName("myInput")[0].value='0';
   document.getElementsByName("myInput")[1].value='1';
   document.getElementsByName("myInput")[2].value='2';
  }
</script>
</head>

<body>
<input name="myInput" type="text" size="20" /><br />
<input name="myInput" type="text" size="20" /><br />
<input name="myInput" type="text" size="20" /><br />
<br />
<input type="button" onclick="getElements()" value="exec" />
</body>
</html>
--------------------编程问答--------------------
引用 1 楼 ganshenml 的回复:
你咋传到后台的,后台又是如何得到的?

<input type="hidden" name="template" value="1"/>,在后台是作为参数传入的或者是
String template = request.getParameter("template");

--------------------编程问答--------------------
引用 2 楼 podongxi777442156445 的回复:

var mb=obj;
这里的,obj里是什么东西?
点击按钮的时候传的参数啊,再在js里面判断,修改成相应的值。 --------------------编程问答--------------------
引用 4 楼 rui888 的回复:
document.getElementsByName("template")  这个是数组你嘚索引。
这个不行,在后面加[0]了也不行。 --------------------编程问答--------------------
引用 9 楼 zhutou100hao 的回复:
Quote: 引用 2 楼 podongxi777442156445 的回复:


var mb=obj;
这里的,obj里是什么东西?
点击按钮的时候传的参数啊,再在js里面判断,修改成相应的值。

document.getElementsByName("template").value=1;
直接等于1试试 --------------------编程问答--------------------
引用 5 楼 podongxi777442156445 的回复:
感觉,是你的obj取值没取到吧,你可以试验下。点击你的那个控件等于1时。你可以alert(mb==1)一下这个,看看是什么值,是否是true?

<input type="hidden" name="template" value="1"/>

alert(document.getElementsByName("template").value="3";)
是没问题的,我再后台就是作为参数接受的啊根据对应的名字,或者是
String template = request.getParameter("template");
--------------------编程问答-------------------- String [] args = request.getParameterVlues("template"); --------------------编程问答--------------------
引用 11 楼 podongxi777442156445 的回复:
Quote: 引用 9 楼 zhutou100hao 的回复:

Quote: 引用 2 楼 podongxi777442156445 的回复:


var mb=obj;
这里的,obj里是什么东西?
点击按钮的时候传的参数啊,再在js里面判断,修改成相应的值。

document.getElementsByName("template").value=1;
直接等于1试试
不行 --------------------编程问答-------------------- document.getElementsByName("template")[0].value=1;
按照那个谁的·· --------------------编程问答--------------------
引用 13 楼 sd4000784 的回复:
String [] args = request.getParameterVlues("template");
不行 --------------------编程问答--------------------

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> New Document </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <script>
function checkmb(){
document.getElementsByName("template")[0].value="2";
}
  </script>
 </head>

 <body>
<input type="text" name="template" value="1" onclick="checkmb()"/>
 </body>
</html>




总感觉是出在obj上呢 --------------------编程问答--------------------
引用 17 楼 podongxi777442156445 的回复:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> New Document </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <script>
function checkmb(){
document.getElementsByName("template")[0].value="2";
}
  </script>
 </head>

 <body>
<input type="text" name="template" value="1" onclick="checkmb()"/>
 </body>
</html>




总感觉是出在obj上呢
传的参数不对么? --------------------编程问答--------------------
引用 18 楼 zhutou100hao 的回复:
Quote: 引用 17 楼 podongxi777442156445 的回复:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> New Document </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <script>
function checkmb(){
document.getElementsByName("template")[0].value="2";
}
  </script>
 </head>

 <body>
<input type="text" name="template" value="1" onclick="checkmb()"/>
 </body>
</html>




总感觉是出在obj上呢
传的参数不对么?

你可以alert(obj),我总感觉,这里的值有问题呢··· --------------------编程问答--------------------
String []  args = request.getParameterValues("template");

非让我把所有字母都打对...

你传递的是一个数组.  你可以用几种方式后台来获取.
1.getParameterMap();  key  value
2.getParameterValues();  一个数组
3. 你可以把所有的template值 塞到一个隐藏域里 在从 request.getParameter("对应的name值");来获取(当数值过长时记得要post数据  而不能用get get只能接收2kb的数据)
--------------------编程问答--------------------
引用 20 楼 sd4000784 的回复:
String []  args = request.getParameterValues("template");

非让我把所有字母都打对...

你传递的是一个数组.  你可以用几种方式后台来获取.
1.getParameterMap();  key  value
2.getParameterValues();  一个数组
3. 你可以把所有的template值 塞到一个隐藏域里 在从 request.getParameter("对应的name值");来获取(当数值过长时记得要post数据  而不能用get get只能接收2kb的数据)
我知道你那个函数写错了,搞定了,全部通过id去取值,去存。我老大这样解决的,他说他之前通过name可以。
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,