gpt4 book ai didi

javascript - 使用 Ajax 的 jQuery Select2 插件

转载 作者:行者123 更新时间:2023-11-29 19:38:58 27 4
gpt4 key购买 nike

我正在使用带有 Ajax 的 Select2 插件连接到我的员工数据库。它允许设置 session 并选择您要邀请的所有员工。

代码如下:

$("#requiredAttendees").select2({
multiple: true,
minimumInputLength: 3,
placeholder: "Search for employee",
tokenSeparators: [" "],
ajax: {
url: "jsonUser.php",
dataType: 'json',
data: function (term) {
return {
term: term, // search term
};
},
results: function (data) { // parse the results into the format expected by Select2.
return {results: data};
}
},
});

这是我在字段中输入姓氏时的 jSON 响应:

[{"id":"12345","text":"Hussey, Sam},{"id":"67890","text":"Hussey, Carl"}]

我的问题是,在缩小搜索结果范围时,我还试图通过搜索名字来进一步缩小范围。所以我会输入 Hussey, c 并希望它只显示我的结果。

但是,只要我输入一个逗号,我就找不到任何结果。

我假设代码将任何带逗号的内容都视为新结果,但我不能确定。

这是我的 JSON 输出:

//Define the output
$firstName = (string) $emp->FirstName;
$lastName = (string) $emp->LastName;
$empID = (string) $emp->EmpID;
$email = (string) $emp->email;

//Add the resykts to an array
$users[] = array(
'id' => $empID,
'text' => $lastName . ', ' . $firstName,
);

}

//Set the content type to JSON for jquery to understand
header('Content-Type: application/json');

//Print the response to the page
print json_encode($users);

有什么想法会导致这种情况吗?

编辑:

这是我发送查询的部分:

//Define some variables
$query = $_GET['term'];
$users = array();

//Prevent running if less than 3 char have bene submitted
if (strlen($query) < 3) {
die();
}

//Create a new database connection
$objDB = new DB;
$xml = $objDB->setStoredProc('focusGetEmp')->setParam("LastName", $query)->execStoredProc()->parseXML();

最佳答案

现在已经解决了。搜索字词只是直接从查询中获取结果,因此我必须对其进行调整以修复它。

之前

WHERE    LastName LIKE '%' + @LastName + '%'

之后

WHERE    A.[LastName] + ', ' + A.[FirstName] LIKE '%' + @term + '%'

关于javascript - 使用 Ajax 的 jQuery Select2 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24145784/

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