本帖最后由 heyi10013 于 2010-05-07 09:31:38 编辑

解决方案 »

  1.   

    function usd_div_widgetController(widget){
    if(widget.id=="usd_div_div001andusername")
    {
    usd_div_div001andusername=....
    }
    if(widget.id=="usd_div_div002andusername")
    {
    usd_div_div002andusername=....
    }  }
      

  2.   

    不好意思,我可能没有描述清楚,
    对于变量
    var usd_div_div001andusername=null;
    var usd_div_div002andnum1=null;
    ...这个可能是2个,也可能是很多个,我的意思是根据
    widgetid的值
    然后用
    eval(widgetid)还是什么方式,动态的给变量赋值。usd_div_widgetController是个公共的方法,里面的内容时固定的
      

  3.   

    现在我想用eval的方式来实现,但是遇到了问题,就是不知道怎么把值赋到对应的变量中去,有高手指点一下也行呀,
      

  4.   

    现在我要实现的功能是这样的,在页面有N个文本框,每个文本框都配上了onchange事件,都指向
    usd_div_widgetController(this)方法,在js中根据每个文本框的id都对应有一个全局变量,现在要在usd_div_widgetController方法中把文本框中的值赋值给对应的全局变量。有什么好的思路或是解决办法都可以提出来。
      

  5.   

    比如有一个函数
    function fun(a){
      OOXX
    }要调用这个函数
    eval('fun('+widaetid+')');
      

  6.   

    var targetElement = Document.getElementById(widgetid);
    然后对targetElement赋值,是这个意思么?
      

  7.   

    这样? <input type="text" id="txt1" value="abc" onchange="usd_div_widgetController(this)"/>
     <script type="text/javascript">
     function usd_div_widgetController(widget){
    var widgetid=widget.id;//widgetid="usd_div_div001andusername"或者是"usd_div_div002andnum1"
    var scriptStr = "var " + widgetid + "=widget.value;";
    eval(scriptStr);
        alert("变量" + widgetid + "=" + eval(widgetid));
     }
    </script>
      

  8.   

    如果是全局变量可以这样,要不就放到一个对象下面。当成对象的属性。 var a = null;
    var b = null;
    (function(x){
    window[x.id] = x;
    })({id:"a", value:10});
    alert(a.value);
      

  9.   

    <script>
    var usd_div_div001andusername=null;
    var usd_div_div002andnum1=null;
    function usd_div_widgetController(widget){//var widgetid=widget.id;//widgetid="usd_div_div001andusername"或者是"usd_div_div002andnum1"
    eval("("+widget.id+"=widget)");}
    usd_div_widgetController({id:"usd_div_div001andusername",value:"1"});
    usd_div_widgetController({id:"usd_div_div002andnum1",value:"2"});alert(usd_div_div001andusername.value);
    alert(usd_div_div002andnum1.value);
    </script>