Javascript 从ajax响应中获取特定值
我将ajax与砌体一起使用 Ajax代码:这个Ajax用于从Javascript 从ajax响应中获取特定值,javascript,php,jquery,ajax,jquery-masonry,Javascript,Php,Jquery,Ajax,Jquery Masonry,我将ajax与砌体一起使用 Ajax代码:这个Ajax用于从 $.ajax({ type: "get", url: "some.php", dataType: "text", success: function(data) { if (data && data.length > 0) { $items = $(data);
$.ajax({
type: "get",
url: "some.php",
dataType: "text",
success: function(data) {
if (data && data.length > 0) {
$items = $(data);
$grid.append( $items )
.masonry('appended', $items);
$(this).find(".loading").hide();
}
}
Php部分:这只是Php文件中理解问题的一小部分或足够部分
$b= "sv";
echo "asjdgsajd";
echo "a";
echo $b;
现在我得到的一切都是正确的,但是我想使用$b的值来设置属性值,以及其他值作为内容,但是我如何才能特别获得$b的值呢?
谢谢尝试使用json并更改php以发送json响应,这样您就可以发送更多内容,并根据需要在客户端访问它们 PHP脚本:
$outArr=array("b"=>"sv","content1"=>"asjdgsajd","content2"=>"a");
$jsonResponse=json_encode($outArr);
echo $jsonResponse;
在AJAX函数中,您可以如下方式访问数据:
$.ajax({
type: "get",
url: "some.php",
dataType: "text",
success: function(data) {
if (data && data.length > 0) {
data=$.parseJSON( data ); //parse response string
b=data.b;//value of b
content1=data.content1;//value of content1
$("#exampleDiv").attr("id",b).html(content1); //set the attribute and content here for an example div
}
}
})
将
数据类型更改为json
$.ajax({
type: "get",
url: "some.php",
dataType: "json",
success: function(data) {
//data will hold an object with your response data, no need to parse
console.log('Do whatever you want with ' + data.b + '.');
}
在some.php
中执行以下操作:
$response =array(
'b' => "sv",
'a' => "asjdgsajd",
'c' => "a"
);
echo json_encode($response);
echo $b;
关联数组的项最终将作为javascript对象的属性,您可以在success
回调中使用它(或者done
函数,因为success
已被弃用)。您可以发布AJAX响应的完整示例吗?为什么不改用JSON呢?sv asjdgsajd a在每次echo@MachavityUsing JSON后使用break after将使这变得更容易。你使用数据类型有什么原因吗:“text”不是这样一个特殊的原因那么如何使用jason@some non-descript users进行iit你可以只在上面的ajax代码中进行建议的编辑吗@Amitif如果我不更改文本的数据类型,因为我无法将整个代码转换为json数据,因为实际文件中有很多数据,那么@一些不可描述的用户好吧,你必须让“b”以某种方式被识别。你可以把它放在特殊的偏执论或其他东西中,然后做一些凌乱的正则表达式工作,把它从文本流中拉出来。但是我真的建议你还是用一种干净的方式来做。也许你可以把只需要获取文本的请求和需要干净值的请求分开,然后用不同的ajax调用来获取它们?