2015-11-28 45 views
0

我不能讓下面的AJAX請求工作:我不能讓我的Ajax請求工作

我想再次顯示在「P」標籤

Server中的字段中輸入的文本:Apache 2.2的 PHP 5

我的HTML:

<html> 
 

 
<head> 
 

 
    <title>Test for reponder</title> 
 
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> 
 

 
    <script> 
 
    $function send() { 
 
     $('body').on('click', 'button', function(event) { 
 
       var namee = document.getElementById('name').value; 
 
       //var dataString='name ='+ name; 
 
       $.ajax({ 
 
       type: 'POST', 
 
       url: 'responder.php', 
 
       data: namee, 
 
       success: function(html) { 
 
        $('#msg').html(html); 
 
       } 
 
       }) 
 
    </script> 
 
</head> 
 

 
<body> 
 
    <input type="text" id="name"> 
 
    <!--<input type="submit" id="button" value="Send" onclick="return send();">--> 
 
    <button type="button">Send</button> 
 

 
    <p id="msg"></p> 
 

 
</body> 
 

 
</html>

我的PHP文件:

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

+2

'$ function'是一個語法錯誤,有沒有這樣的事情,刪除美元符號,或者更好的是,不要把內部功能的事件處理程序,除了DOM準備好的處理程序之外 – adeneo

+0

請檢查您的瀏覽器控制檯(F12)是否有Javascript錯誤。 – Kenney

回答

0

你可以做這樣的事情:

HTML

<input type="text" id="name"> 
<button type="button">Send</button> 

<p id="msg"></p> 

jQuery的

<script> 
    $(document).ready(function(){ 
     $(document).on('click', 'button', function(){ 
      var name = $("#name").val(); 
      var param = {name: name}; 

      $.ajax({ 
       type: 'POST', 
       url: 'responder.php', 
       cache: 'false', 
       data: param, 

       beforeSend: function(){ 
        // before send 
       }, 

       success: function(data){ 
        // success 
        $('#msg').html(data); 
       }, 

       error: function(){ 
        // error 
       } 
      }); 
     }); 
    }); 
</script> 

responder.php

<?php 

    if(isset($_POST['name'])){ 
     $name=$_POST['name']; 
     echo "response:" . $name; 
    } 

?>