2012-06-07 79 views
9

我試圖使用jQuery的POST方法,使數據請求因此,這是在HTML頁面的代碼:

<form> 
Title : <input type="text" size="40" name="title"/> 
<input type="button" onclick="headingSearch(this.form)" value="Submit"/><br /><br /> 
</form> 
<script type="text/javascript"> 
function headingSearch(f) 
{ 
    var title=f.title.value; 
    $.ajax({ 
     type: "POST", 
     url: "edit.php", 
     data: {title:title} , 
     success: function(data) { 
     $('.center').html(data); 
     } 
    }); 
} 
</script> 

這是服務器上的PHP代碼:

<?php 

$title = $_POST['title']; 
if($title != "") 
{ 
    echo $title; 
} 

?> 

POST請求是不是人工做的,我不知道爲什麼這些文件是在WAMP WWW文件夾相同的文件夾,以便至少在URL ISN 't wrong。

+1

'$回報標題simplier;'不會在PHP中打印任何東西,你需要'echo $ title;'。 – MrCode

+0

來自前端ajax調用的錯誤是什麼? –

+1

使用Firebug或類似工具觀察是否有任何請求 – MrCode

回答

8

您需要使用data: {title: title}將其正確發佈。

在PHP代碼中,您需要使用echo而不是return

+0

嗯,我在糾正這些問題,但什麼都沒有改變 – user1201915

+0

@ user1201915你管理解決這個問題? – Zame

2

檢查標題是否有任何價值。如果不是,則使用Id檢索值。

<form> 
Title : <input type="text" id="title" size="40" name="title" value = ''/> 
<input type="button" onclick="headingSearch(this.form)" value="Submit"/><br /><br /> 
</form> 
<script type="text/javascript"> 
function headingSearch(f) 
{ 
    var title=jQuery('#title').val(); 
    $.ajax({ 
     type: "POST", 
     url: "edit.php", 
     data: {title:title} , 
     success: function(data) { 
    $('.center').html(data); 
} 
}); 
} 
</script> 

試試看看這個代碼。

在php代碼中,使用echo而不是返回。只有這樣,javascript數據纔會有它的價值。

+0

標題有價值,我試過警報(標題); – user1201915

+0

感謝您發佈的舊代碼,但不幸的是它沒有幫助。 – user1201915

+0

請檢查更新後的答案..它對你有幫助嗎? –

0

編號建議您使用有點simplier方法 -

$.post('edit.php', {title: $('input[name="title"]').val() }, function(resp){ 
    alert(resp); 
}); 

試試這個,我只是覺得它的語法比$。阿賈克斯的一個...

+0

我甚至在寫入堆棧溢出之前就試過了。我試過你的代碼,但仍然沒有改變,謝謝。 – user1201915

+0

所以它是做什麼的,什麼都不警告?或者根本不提醒? – manWe

+0

它根本沒有提醒,只是沒有任何提示。 – user1201915