2015-11-03 108 views
0

我有一個按鈕,當點擊時,我需要通過獲取請求發送兩個變量。如果我只有一個變量,它可以正常工作,但只要添加第二個變量(str2)(稱爲q),它就不會執行任何操作。不能發送多個變量在AJAX

腳本:

<script name="editresults"> 
    function editresults(str,str2) { 
    if (str == "") { 
     document.getElementById("mainpart").innerHTML=""; 
     return; 
    } else { 
     if (window.XMLHttpRequest) { 
      // code for IE7+, Firefox, Chrome, Opera, Safari 
      xmlhttp=new XMLHttpRequest(); 
     } else { 
      // code for IE6, IE5 
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
     } 
     xmlhttp.onreadystatechange=function() { 
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
       document.getElementById("mainpart").innerHTML=xmlhttp.responseText; 
      } 
      $(document).ready(function() { $("#datepicker").datepicker({ dateFormat: 'dd-mm-yy', changeMonth: true, 
      changeYear: true, yearRange: '1930:2015'}); }); 
     } 
     xmlhttp.open("GET","editemployeedetailsform.php?id="+str+"&q="+str2,true); 
       $('#editemployeedetailsform form').submit(function(){ 
      var data=$(this).serialize(); 
      // post data 
      $.post('submit.php', data , function(returnData){ 
         $('mainpart').html(returnData) 
      }) 

      return false; // stops browser from doing default submit process 
    }); 
     xmlhttp.send(); 
    } 
} 
</script> 

代碼按鈕:

<td><input type='button' value='Edit' onclick='editresults(<?php echo $surnames[$k]["employeeid"] ?>,<?php echo $q ?>)'></td> 
+0

爲什麼當你在第 – Tushar

+0

頁面加載jQuery時不使用'$ .ajax'當我使用ajax時,我後來遇到了問題,因爲填充的div中有很多腳本不會運行。 –

回答

0

它看起來是不是與Ajax調用的問題,而是你的JavaScript和PHP的搭配。 我猜$surnames[$k]["employeeid"]是一個整數,至極的作品不帶引號[「]但第二個參數<?php echo $q ?>可能是一個字符串的需求是在引號[」]

爭取你的按鈕,這個代碼:

<td><input type='button' value='Edit' onclick='editresults(<?php echo $surnames[$k]["employeeid"] ?>,"<?php echo $q ?>")'></td> 

更多信息: 如果PHP解釋器增加了例如像「測試」結果爲JavaScript解釋我是onclick='editresults(1, test);' 這意味着測試將被認爲是可變的字符串。