gpt4 book ai didi

php - Typeahead 输入字段和查询通过 AJAX 传递给 PHP

转载 作者:行者123 更新时间:2023-12-02 06:37:16 26 4
gpt4 key购买 nike

我将 Twitter Bootstrap Typeahead 用于自动完成字段。

最终状态目标:用户首先在字段 1 中输入详细信息。当他们在字段 2 中输入详细信息时,ajax 将查询传递给 PHP 文件,该文件根据什么查询数据库也被输入到字段 1。

如何将字段 2 的查询和字段 1 的内容传递给 PHP 文件并访问它们。

这是我目前所拥有的:

HTML 文件:

<div class="field1">
<input type="text" id="field1" data-provide="typeahead" name="field1">
</div>
<div class="field2">
<input type="text" id="field2" data-provide="typeahead">
</div>

<script src="js/jquery-1.9.1.min.js"></script>
<script src="js/bootstrap.js"></script>
<script>
$(function() {
$("#field2").typeahead({
source: function(query, process) {
var textVal=$("#field1").val();
$.ajax({
url: 'field2.php',
type: 'POST',
data: 'query=' + query,
dataType: 'JSON',
async: true,
success: function(data) {
process(data);
console.log(textVal);
}
});
}
});
});
</script>

PHP 文件:

if (isset($_POST['query'])) {
$db_server = mysql_connect("localhost", "root", "root");
mysql_select_db("db_test");

$query = $_POST['query'];
$other = '**This needs to be field 1**';

$sql = mysql_query("SELECT * FROM table WHERE row1 LIKE '%{$query}%' AND row2 = '$other'");
$array = array();

while ($row = mysql_fetch_assoc($sql)) {
$array[] = $row['row1'];
}

echo json_encode($array);}

目前,查询部分完美运行并返回结果(控制台还显示来自'Field1'的值。只需要同时将该值写入php文件即可!

任何帮助都会很棒

最佳答案

如果我没有理解错的话,您想要将字段 1 和 2 的值都解析为同一个 AJAX 调用。这就是您的做法。

<script>
$(function() {
$("#field2").typeahead({
source: function(query, process) {
var textVal=$("#field1").val();
$.ajax({
url: 'field2.php',
type: 'POST',
data: 'query=' + query + '&field1=' + textVal,
dataType: 'JSON',
async: true,
success: function(data) {
process(data);
console.log(textVal);
}
});
}
});
});
</script>

现在您只需在 PHP 文件中创建另一个 $_POST['field1']。

关于php - Typeahead 输入字段和查询通过 AJAX 传递给 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15330543/

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