0

我试图在提交后从getsku javascript中检索文本,但不确定如何真正做到这一点。1) 我如何检索 POST 数据?

2)如果我有多个要传回的变量(数据类型:文本),我如何检索并将其发回

3) 我什么时候应该使用 JSON,什么时候使用文本。

4) 如果我使用 JSON,我如何读取它(在 javascript 之后)并显示它(将数据返回到 javascript)。

主页面中的 javascript

 function getsku(){

$.ajax({
    type: "POST",
    url: "funcAjax.php",
    data: { 'ddl1': $("#drop_1").val(), 'ddl2': $("#tier_two").val() },
    dataType: 'text', 
    success: function(data) {
        $("#sku").val(data);
    },
    complete: function() {
        alert('Complete: Do something.');
    },
    error: function() {
        alert('Error: Do something.');
        }
});

}

按钮

<input type="button" value="Get SKU" onclick="getsku();" >

尝试从另一个 php 检索并将数据返回到上述 php(此处有问题)

if(isset($_REQUEST['ddl1'])) { 
echo "FOUND1";
}else{
echo "FOUND2";
}
4

1 回答 1

1

始终从您的 PHP 中返回 JSON。然后,您可以在响应中包含尽可能多的变量,并在适当的情况下包含错误代码 - 如下所示:

{"error":"0","result1":"result 1 data","result2":"result 2 data"}

那么你的success功能可以变成:

success: function(data) {
    if (data.error != 0) {
        // An error occurred on server: do something 
    } else {
         $("#sku").val(data.result1);
         // do something with data.result2
    }
},

你的 PHP 会变成这样:

if(isset($_REQUEST['ddl1'])) { 
  echo json_encode(array("error"=>0, "result1"=>"FOUND1"));
}else{
  json_encode(array("error"=>1, "result1"=>"NotFOUND"));
}
于 2013-06-19T15:11:57.170 回答