Number(var)
转换下
如果是整形还可以parseInt(var)

解决方案 »

  1.   

    <script language="javascript">
    function jsq()
    {
    var dy=document.myform.dy.value;
    var dr=document.myform.dr.value;
    for (var i=0;i<myform.js.length;i++)
    {   
    var e=myform.js[i];   
    if (e.checked)               
    js=e.value;
    }
    alert(dy+js+dr);//输出1+1,想让它输出1+1的和
    document.myform.jg.value=eval(dy+js+dr);
    }
    </script>
    <form id="myform" name="myform" method="post" action="">
        <td height="50" align="center"><input name="dy" type="text" id="dy" onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false;"/>
          <input type="radio" name="js" value="+"/>+
          <input name="js" type="radio" value="-"/>-
          <input type="radio" name="js" value="*"/>×
          <input type="radio" name="js" value="/"/>÷
          <input name="dr" type="text" id="dr" onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false;"/>
          <input type="button" name="Submit" value="计算" onClick="jsq();" />
        =
        <input name="jg" type="text" id="jg"  onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false;"/>    </td>
        </form>
      

  2.   

    这样吗:
    alert(Number(dy)+js+Number(dr));//输出1+1,想让它输出1+1的和
    不行啊,还是输出“1+13”
    parseInt我也用过了,不行我觉得问题出在那个运算符号上,得用个啥转换下,代码才知道它是个运算符,否则估计把它当字符串了。
      

  3.   

    alert(Number(dy)+Number(js)+Number(dr));//中间那个怎么不加?
      

  4.   

    算了,不折腾了,先这样凑合着用:<script language="javascript">
    function jsq()
    {
    var dy=document.myform.dy.value;
    var dr=document.myform.dr.value;
    for (var i=0;i<myform.js.length;i++)
    {   
    var e=myform.js[i];   
    if (e.checked)               
    js=e.value;
    }
    if (js=="+")
    {
    //alert(Number(dy)+Number(dr));//输出1+1,想让它输出1+1的和
    document.myform.jg.value=Math.round(Number(dy)+Number(dr));
    }
    else if (js=="-")
    {
    document.myform.jg.value=Math.round(Number(dy)-Number(dr));
    }
    else if (js=="*")
    {
    document.myform.jg.value=Math.round(Number(dy)*Number(dr));
    }
    else if (js=="/")
    {
    document.myform.jg.value=Math.round(Number(dy)/Number(dr));
    }
    else
    {
    document.myform.jg.value="非法操作!";
    }
    }
    </script>
      

  5.   

    dy+js+dr
    这样:dy*1+js*1+dr*1
    输出的就是和,这样它就知道是数字的加法,不是字符串的连接了
      

  6.   


    <script language="javascript">
    function jsq()
    {
    var dy=Number(document.myform.dy.value);
    var dr=Number(document.myform.dr.value);
    for (var i=0;i<myform.js.length;i++)
    {   
    var e=myform.js[i];   
    if (e.checked)               
    js=e.value;
    }
    alert(dy+js+dr);//输出1+1,想让它输出1+1的和
    document.myform.jg.value=eval(dy+js+dr);
    }
    </script>