[英]submitting a form using $.ajax
當dom准備就緒時,我正在調用此函數$().submit
但似乎沒有工作,沒有來自服務器的響應
$(function(){
$("#logingform").submit(function(){
var values =$(this).serialize();
call_server("../php/login.php",values);
});
});
function call_server(URL,DATA)
{
$.ajax(
{
type:'POST',
url : URL,
data : DATA,
dataType:'json',
success:function(response){
$("#d1").append(response);
}
}
);
}
似乎沒有任何東西從服務器回來。
server code
<?php
$email = $_POST['loginemail'];
$password =$_POST['loginpassword'];
echo json_encode(array('returned_val' => 'yoho'));
你的ajax選項后面還有一個額外的半冒號:
data : $(this).serialize();,
vs正確
data : $(this).serialize(),
您不需要解析返回的json,因為您已經在ajax選項中定義了dataType:'json'
。
$("#d1").append($.parseJSON(response));
這不是必要的。
如果要將響應對象顯示為字符串,則需要對其進行字符串化:
$("#d1").append(JSON.stringify(response));
此外,您在此行中有語法錯誤:
data : $(this).serialize();,
刪除;
。
POST的數據應該是json格式,而不是$(this).serialize()
,對你的數據使用$(this).serializeArray()
。 這將傳遞POST主體的值而不是查詢字符串中的值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.