2017-09-13 54 views
0

我試圖通過.php文件中的ajax傳遞值,即data:{num:val}。但價值沒有傳遞。我試圖通過alert()顯示值,但它沒有顯示任何內容。我無法通過AJAX使用PHP獲取數據

<form method="post" id="frm" name="new" onsubmit="return false;"> 
     Enter a Value: <input name="value1" type="text" id="num"><Br/><Br/> 
     <input type="submit" value="Click" id="click">&nbsp;&nbsp;&nbsp; 
    </form> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
    <script type="text/javascript"> 
     jQuery(document).ready(
       $('#click').on(
       function(){ 
        var val=$('num').val(); 
        alert(val); 
        jQuery.ajax({ 
          method:'POST', 
          url:'table_php.php', 
          data:{num:val}, 
          success: function(response){ 
           console.log(response); 
          } 
       }); 
       } 
       ) 
       ); 
    </script> 

這裏是我的table_php.php文件

<?php 
echo $var=$_POST["num"]; 
if(isset($var)&&!empty($var)) 
{ 
echo "hello"; 
} 
+3

'$( 'NUM')'應該是'$( '#NUM')'。你用'id'選擇,而不是按元素名稱。 – David

+0

我的問題是,你是否正在提示'alert(val);'? – Ravi

+0

我已經從$('num')更改爲$('#num'),但問題仍然存在。 – Darsh

回答

0

。在你的代碼的兩個問題。

- >不正確的語法$("#click").on(function()它被更改爲$("#click").click(function()。如果你正在使用的語法應該是這樣的

$("#click").on("click", function() { 
    console.log($(this).text()); 
}); 

- >然後var val=$('num').val(); num是一個ID,以便把#var val=$('#num').val();

現在是工作的罰款意味着警報現在顯示。

jQuery(document).ready(
 
    $("#click").click(function(){ 
 
        var val=$('#num').val(); 
 
        alert(val); 
 
        jQuery.ajax({ 
 
          method:'POST', 
 
          url:'table_php.php', 
 
          data:{num:val}, 
 
          success: function(response){ 
 
           console.log(response); 
 
          } 
 
       }); 
 
    }) 
 
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form method="post" id="frm" name="new" onsubmit="return false;"> 
 
     Enter a Value: <input name="value1" type="text" id="num"><Br/><Br/> 
 
     <input type="submit" value="Click" id="click">&nbsp;&nbsp;&nbsp; 
 
    </form> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

+0

它現在工作嗎您的php腳本?警報顯示在客戶端,數據正在傳遞。 –

+0

是的,謝謝....但它沒有得到來自另一個文件的響應 – Darsh

+0

在哪個文件? –

0

如果你想通過ID在jQuery中你必須在ID名稱前添加一個#得到一個輸入的值。替換此:

var val=$('num').val(); 

與此:

var val=$('#num').val(); 
+0

有些解釋說明爲什麼/您做了什麼會對OP。 – TylerH

+0

如果你想在jQuery中獲得id的輸入值,你必須在id的名字前加#。嘗試它會工作 –

+0

仍然無法工作 – Darsh