【发布时间】:2018-05-29 13:52:58
【问题描述】:
我下载了一个应用程序,它是使用 SMARTY TEMPLATE ENGINE 编写的。我正在尝试创建一个带有下拉建议的搜索引擎。
HTML 代码:
<input type="text" placeholder="{$_L['Search']}" id="txtsearch">
<div id="filter"></div>
Javascript:
$( "#txtsearch" ).keyup(function() {
if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0){
filter = document.getElementById('filter').style.display="block";
userInput = encodeURIComponent(document.getElementById("txtsearch").value);
var _url = $("#_url").val();
var urlsuggest = _url + 'ps/auto-suggest?userInput='+userInput;
xmlHttp.open("GET", urlsuggest, true);
xmlHttp.onreadystatechange = handleResponse;
xmlHttp.send(null);
}else{
}
});
控制器
if(isset($_GET['userInput'])){
$value = $_GET['userInput']; //assign the value
}else{
echo "no input";
}
$getdata = ORM::for_table('sys_items')->where_like('name',"%$value%")->order_by_asc('name')->find_many();
问题是控制器中的$value 变量没有获取在java 脚本中var urlsuggest 中传递的值。当我在$value 变量中添加默认值(例如$value="PRC")并将var urlsuggest 更改为_url + 'ps/auto-suggest' 时,代码工作正常,它将在过滤器div 中显示所有带有“PRC”字样的数据。
如何将输入字段的值传递给控制器中的$value 变量?任何帮助,将不胜感激。谢谢。
【问题讨论】:
标签: javascript php smarty