0

当我使用以下 ajax 函数发送变量时,num 和 value 两个变量都只获取 num 变量值。我怎么能传递不同的值。谁能帮我?

<script>
function calculate_rate(num,value)
    {                           
        xmlhttp.onreadystatechange=function()
        {
            if (xmlhttp.readyState==4 && xmlhttp.status==200)
            {
                document.getElementById("costing").innerHTML=xmlhttp.responseText;
            }
        }            
        xmlhttp.open("GET","data.php?num="+num+"&value="+value,true);
        xmlhttp.send();
    }// showHint
</script>

<span id="costing"></span>        

<form>
    <label>Number</label>
    <span>
      <select name="num" onchange="calculate_rate(this.value)">
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>                           
      </select><br />
    </span>  
    <label>Value</label>
    <span>
        <input type="text" name="value"  value="" onchange="calculate_rate(this.value)"  />     
    </span>
</form>   
4

1 回答 1

1

每次调用只传递两个变量之一。尝试这个

function calculate_rate(num,value)
        {                           
                    xmlhttp.onreadystatechange=function()
                    {
                        if (xmlhttp.readyState==4 && xmlhttp.status==200)
                        {
                            document.getElementById("costing").innerHTML=xmlhttp.responseText;
                        }
                    }            
            xmlhttp.open("GET","data.php?num="+num+"&value="+value,true);
            xmlhttp.send();
        }// showHint
</script>




 <span id="costing"></span>        

      <form>
      <label>Number</label>
      <span>
          <select id="num" onchange="calculate_rate(this.value,document.getElementById('value').value))">
          <option value="1">1</option>
          <option value="2">2</option>
          <option value="3">3</option>                           
          </select><br />

        <label>Value</label>
        <span>
        <input type="text" id="value"  value="" onchange="calculate_rate(document.getElementById('num').value,this.value)"  />     
        </span>
       </form> 
于 2013-08-16T13:23:01.943 回答