日期:2014-05-16  浏览次数:20404 次

JavaScript怎么传参数
HTML页:

  <input   name= "c "   onclick= "fillTextarea(dlszy) "   value= "有多年的药品营销经验 "   type= "checkbox "   /> 有多年的药品营销经验 </li>

JAVASCRIPT
function   fillTextarea(str_name){    
var   str= " ";
var   tname=str_name
for(i=0;i <document.all.c.length;i++)
{
if(document.all.c[i].checked)
{
if(str== " ")
{str+=document.all.c[i].value;}
else
{str+= ", "+document.all.c[i].value;}
}
}
document.form1.tname.value=str;
}


fillTextarea(str_name)
的意思不就是接收一个变量值吗
怎么这个str_name赋给tname   的值不是dlszy而还是tname呢

最后要实现的是
document.form1.接收的变量值.value=str;


------解决方案--------------------
onclick= "fillTextarea( 'dlszy ') "

JAVASCRIPT
function fillTextarea(str_name){
var str= " ";
var tname=document.all[str_name].value;
}
------解决方案--------------------
document.form1.tname.value=str;
改成
document.form1[tname].value=str;


根本是语法的问题~~
document.form1. "abc ".value=str;//你觉得这样会不会报错啊?当然会~
------解决方案--------------------
給每个要使用的输入框一个id,使用document.getElementById( "dlszy ").value来取值,dlszy是你要取值的那个输入框的id,赋值也一样,document.getElementById( "tname ").value=str;
------解决方案--------------------
你要得到那个str,最好是做一个隐形的input控件,然后把这个控件的id传给函数.
如:
<input name= "c " onclick= "fillTextarea( 'dlszy ') " value= "有多年的药品营销经验 " type= "checkbox " /> 有多年的药品营销经验 </li>
<input id= 'dlszy ' type= 'hidden '>

JAVASCRIPT
function fillTextarea(str_name){
var str= " ";
var tname=str_name
for(i=0;i <document.all.c.length;i++)
{
if(document.all.c[i].checked)
{
if(str== " ")
{str+=document.all.c[i].value;}
else
{str+= ", "+document.all.c[i].value;}
}
}
document.getElementById(tname).value=str;
}