gpt4 book ai didi

php - ajax请求未定义

转载 作者:行者123 更新时间:2023-11-28 20:39:26 26 4
gpt4 key购买 nike

Possible Duplicate:
How to return AJAX response Text?
How to return the response from an AJAX call from a function?

我试图根据我用ajax发送的值从SQL获取记录。但当我 console.log 时,我得到的都是未定义的。

jQuery:

function extraOptions(str){
$.get("inc/ajax/extra_options.php",
{q:str},
function(html){
return html;
}
);
}

$("#auto_model").change(function(){
console.log(extraOptions(this.value));
});

extra_options.php:

$q = $_GET['q'];

echo extra_options($mysqli, $q);

extra_options 函数:

function extra_options($mysqli, $q){
$query = "SELECT
extra_options
FROM
vozila_tbl
WHERE
Model_vozila = '".$mysqli->real_escape_string($q)."'";
$result = $mysqli->query($query);
$row = $result->fetch_assoc();

return $row['extra_options'];
}

编辑:

它应该返回 1 或 0,如果它返回 0,我想用 if 语句更改 updateField 函数。

function updateField(str, id, prevvalue, value, vehicletype){
$.get("inc/ajax/form_rest.php",
{q:str, prevvalue:prevvalue, value:value, vehicletype:vehicletype},
function(html){
$('#'+id).html(html);
}
);
}

$("#auto_model").change(function(){
updateField(this.value, 'auto_bodywork', 3, 4, this.parentNode.id), resetBelow(2,'auto'), show('auto_bodywork');
});

我需要在 if 语句中更改的行是:

updateField(this.value, 'auto_bodywork', 3, 4, this.parentNode.id), resetBelow(2,'auto'), show('auto_bodywork');

最佳答案

您的return语句是从匿名函数返回的,而不是从extraOptions()返回的。因此,extraOptions() 返回未定义,因为它没有返回任何内容。

试试这个:

function extraOptions(str){
$.get("inc/ajax/extra_options.php",
{q:str},
function(html){
console.log(html);
}
);
}

$("#auto_model").change(function(){
extraOptions(this.value);
});

如果我理解正确,以下代码应该可以满足您的要求:

$("#auto_model").change(function(e) {
extraOptions(this.value, this.parentNode.id);
});

function extraOptions(str, parentNodeId) {
$.get("inc/ajax/extra_options.php",
{q:str},
function(data) {
if (data == "1") {
updateField(str, "auto_bodywork", 3, 4, parentNodeId);
} else if (data == "0") {
updateField(str, "auto_type", 5, 7, parentNodeId);
} else {
//Not 0 or 1.
}

resetBelow(2, "auto");
show("auto_bodywork");
}
);
}

function updateField(str, id, prevvalue, value, vehicletype){
$.get("inc/ajax/form_rest.php",
{q:str, prevvalue:prevvalue, value:value, vehicletype:vehicletype},
function(html){
$('#'+id).html(html);
}
);
}

关于php - ajax请求未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14695937/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com