将变量从Javascript传递到PHP并返回
控制台最终写回 未捕获引用错误:未定义provhtml 此外,当我将Javascript更改为下面的代码时,控制台最终只是编写代码 以下是我在my index.html中的脚本将变量从Javascript传递到PHP并返回,javascript,php,jquery,variables,Javascript,Php,Jquery,Variables,控制台最终写回 未捕获引用错误:未定义provhtml 此外,当我将Javascript更改为下面的代码时,控制台最终只是编写代码 以下是我在my index.html中的脚本 $('button[name="otherlistbut"]').click(function(d) { lookupProvider(d); }); }); /************ FUNCTIONS ******************/ function lookupProv
$('button[name="otherlistbut"]').click(function(d) {
lookupProvider(d);
});
});
/************ FUNCTIONS ******************/
function lookupProvider(d) {
d.preventDefault();
var phonenum = $('input[name="phonenum"]').val();
$.ajax({
type: 'POST',
data: {
phonenum: phonenum
},
url: 'prov.php',
success: function(data) {
var provnum = $(provhtml);
console.log(provnum);
},
error: function(xhr, err) {
console.log("readyState: " + xhr.readyState + "\nstatus: " + xhr.status);
console.log("responseText: " + xhr.responseText);
}
});
}
function lookupProvider(d) {
d.preventDefault();
var phonenum = $('input[name="phonenum"]').val();
$.ajax({
type: 'POST',
data: {
phonenum: phonenum
},
url: 'prov.php',
success: function(data) { //Receives the data from the php code
var provnum = data.phonenum;
console.log(provnum);
},
error: function(xhr, err) {
console.log("readyState: " + xhr.readyState + "\nstatus: " + xhr.status);
console.log("responseText: " + xhr.responseText);
}
});
}
在prov.php文件中
<?php
$phonenum = $_POST["phonenum"];
$provhtml = file_get_contents('http://api.data24-7.com/v/2.0?user=USERNAME&pass=PASSWORD&api=C&p1=1' . $phonenum);
echo json_encode( array( "phonenum" => $phonenum,"provhtml"=>$provhtml)); //You should be returning the values to your ajax function
?>
你不应该从你的php代码伙伴那里返回值吗?@Outlooker是的,我想是因为在这一行:var provnum=$provhtml;未定义provhtml。您需要使用数据,然后在prov.php文件中需要回显所需内容。啊,这很有意义。那么您有什么建议呢?控制台上显示undefinedtry Console.logdata;它的响应是{phonenum:31055555,provhtml:false}。我希望它以$provhtmlth内链接的HTML内容进行响应,这是您可能从文件\u get\u contents获得的内容。请尝试$provhtml=file\u get\u contents'http://www.google.com/'; 它给了你正确的回答。。
<?php
$phonenum = $_POST["phonenum"];
$provhtml = file_get_contents('http://api.data24-7.com/v/2.0?user=USERNAME&pass=PASSWORD&api=C&p1=1' . $phonenum);
echo json_encode( array( "phonenum" => $phonenum,"provhtml"=>$provhtml)); //You should be returning the values to your ajax function
?>
function lookupProvider(d) {
d.preventDefault();
var phonenum = $('input[name="phonenum"]').val();
$.ajax({
type: 'POST',
data: {
phonenum: phonenum
},
url: 'prov.php',
success: function(data) { //Receives the data from the php code
var provnum = data.phonenum;
console.log(provnum);
},
error: function(xhr, err) {
console.log("readyState: " + xhr.readyState + "\nstatus: " + xhr.status);
console.log("responseText: " + xhr.responseText);
}
});
}