2016-05-05 26 views
2

我的表單頁面:未定義指數在使用AJAX

<body> 
<head> 
     <script src="http://code.jquery.com/jquery-1.9.1.js"></script> 
     <script> 
     function val() 
     { 
      var name=document.getElementById("name").value; 
      if(name == '') 
      { 
       alert(name+" is empty"); 
      } 
      else 
      { 
      var dataString = "name = "+name; 
      $.ajax({ 
       type:"POST", 
       url:"hi.php", 
       data:dataString, 
       cache:false, 
       success:function(html){ 
        $('#msg').html(html); 
       } 
      }); 
      } 
     return false; 
     } 
     </script> 

    </head> 
<body> 
    <form> 
     <input type="text" id="name" > 
     <br/><br/> 
     <input type="submit" value ="submit" onclick="return val()"> 
    </form> 
<p id="msg"></p> 
</body> 

這裏是我的hi.php文件

<?php 
$name = $_POST["name"]; 
echo "Response : ".$name; 
?> 

當點擊提交按鈕,它顯示一個錯誤Notice: Undefined index: name in C:\wamp\www\SendEmailAjaxJquery\hi.php on line 2

我不知道在哪裏是錯誤plz幫我找出錯誤...

在此先感謝

在阿賈克斯數據的變化
+3

到 '數據:{名:名}' –

+0

檢查var_export的'輸出($ _ POST);'在PHP方面。 –

+0

我認爲這些空間導致了這個問題。 –

回答

1

使用此替代該

var dataString = "name = "+name; 

變化到這個

var dataString = 'name='+ name; 

我在這裏有相同的情況下,你將被引導從中。

<html> 
<head> 
    <script type="text/javascript" src="jquery-1.12.3.min.js"></script> 
</head> 
<body> 
<div class="content"> 
    <input type="text" class="search" id="searchid" placeholder="Search for people" /> 
    <div id="result"></div> 
</div> 
</body> 
</html> 
<script type="text/javascript"> 
$(function(){ 
    $(".search").keyup(function() 
    { 
    var searchid = $(this).val(); 
    var dataString = 'search='+ searchid; 
    if(searchid!='') 
    { 
     $.ajax({ 
     type: "POST", 
     url: "result.php", 
     data: dataString, 
     cache: false, 
     success: function(html) 
     { 
     $("#result").html(html).show(); 
     } 
    }); 
    }return false;  
    }); 
+0

這將如何幫助? –

+0

你現在可以看到@Ani Menon –

+0

感謝它現在的工作......只是愚蠢的錯誤...真的很有幫助再次感謝... – Devraj

0

data:{ 'name' : name } 
1

更改爲:

$.ajax({ 
    type:"POST", 
    url:"hi.php", 
    data: {name: name}, 
    cache:false, 
    success:function(html){ 
    $('#msg').html(html); 
    } 
}); 

jQuery的ajax的數據設定接受對象自定義鍵。例如:

data: {anything: "123"} 

在PHP:

echo $_POST["anything"]; //123 
在你的Ajax數據的變化
+0

感謝它現在的工作...... – Devraj