我正在尝试使用 JSON 作为 Ajax 请求的返回类型(使用 jQuery),但我的代码总是导致错误。我尝试在 json 和 jsonp 之间更改 MIME 类型,但无济于事。
我也不确定我是否正在格式化数据:部分正确。我知道我需要将其所有信息包装在 JSON 字符串中,但我不知道它是否正确。
$.ajax({
type: "POST",
url: '-----',
dataType: "jsonp",
data: '{"jobtitle":"job"}',
beforeSend:function(){ },
success: function(data){
var data = $.parseJSON(data);
},
error: function(){
alert("error with Ajax request");
}
});
编辑:这是我的服务器端代码。我不知道如何从中返回有效的 JSON。
<?php
$jobtitle = $_POST["jobtitle"];
$city = $_POST["city"];
$state = $_POST["state"];
$url = "http://www.indeed.com/jobs?q=". $jobtitle ."&l=". $city ."%2C". $state;
$document = new DOMDocument;
$html = file_get_contents($url);
$document ->loadHTML($html);
$xpath= new DOMXPath($document);
$results = $xPath->query('//div[@id="searchCount"]');
$string = "";
if ($results){
for ($i=0; $i < $results->length; $i++) {
$node = $results->item($i)->textContent;
}
$exp = explode(" ", $node);
print "Number of jobs: <b>".$exp[5]. "</b>";
}