gpt4 book ai didi

javascript - JQuery/AJAX : On Input Field change, 创建php session ,并刷新当前页面

转载 作者:行者123 更新时间:2023-12-03 05:10:01 26 4
gpt4 key购买 nike

我有两个输入字段。一个用于显示,称为业务,另一个是隐藏的,称为 auto_search_id 并转到服务器。我已经创建了自动完成功能。我想要做的是,如果用户开始输入并决定单击已存储业务的自动完成列表项,该页面将获取 id,将其发送到 update.php 页面以更新 PHP session id,然后刷新具有当前 session ID 的页面。

在确定正确的 AJAX 编码时遇到问题。我的输入字段更改功能不起作用。它会启动自动完成功能,但是当单击自动完成列表项时,它不会发送 id 并刷新页面。我对 JQuery/AJAX 仍然很陌生,但我认为我在 #auto_search_id 更改函数中遗漏了一些东西,但不知道是什么。请帮忙...

Javascript/JQuery/Ajax

    <script>
$(document).ready(function(){
$("#business").autocomplete({
minLength: 2,
source: function(request, response){
$.ajax({
type: "POST",
url: "/autocomplete-pq.php",
dataType: "json",
data:'keyword=' + request.term,
success: function(data){
response(data);
}
});
},
select: function(event, ui){
$("#business").val(ui.item.label);
$("#auto_search_id").val(ui.item.value);
return false;
}
});

$("#auto_search_id").change(function(){
$.ajax({
type:'POST',
url:"/update.php",
data: { varname: reponse},
success:function(response){
location.reload()
}
});
});
});

</script>

PHP

    <?php
session_start();
$_SESSION["id"] = $_POST["varname"];
echo $_SESSION["id"];
?>

HTML

    <input type="text" id="business" name="jurisdiction" value="<?php echo $juristiction ?>" required>
<input type="hidden" name="search" id="auto_search_id" />

最佳答案

我无法重现代码,但我发现有两处错误:

1 调用 $("#auto_search_id").val(ui.item.value); 实际上设置了输入的新值,但它不会触发其更改 em> 事件。你应该像这样触发它:

$("#auto_search_id").val(ui.item.value).trigger("change");

2 您正在尝试向服务器发送响应(尚不可用)。假设您要将隐藏字段值发送到服务器。

$("#auto_search_id").change(function(){
var newID = $(this).val();
$.ajax({
type:'POST',
url:"/update.php",
data: {varname: newID},
success:function(response){
location.reload()
}
});
});

关于javascript - JQuery/AJAX : On Input Field change, 创建php session ,并刷新当前页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41858965/

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