jquery autocomplete 为什么我得到的不是数组而是字符串
jquery autocomplete 为什么我得到的不是数组而是字符串?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><html><head> <script type="text/javascript" src="plugins/jquery/js/jquery.js"></script> <script type='text/javascript' src='plugins/jquery/js/jquery.autocomplete.js'></script> <link rel="stylesheet" type="text/css" href="plugins/jquery/css/jquery.autocomplete.css" /> <script type="text/javascript"> $(document).ready(function() { $("#labTime").html("time:" + new Date()); setInterval('$("#labTime").html("time:" + new Date());', 1000); //var cities = ["中文","中国","国家","中文国家"]; //$("#content").focus().autocomplete(cities,{matchContains: true,minChars: 1}); initialComplete(null); }); function initialComplete(data){ $("#content").focus().autocomplete("test!getList", { delay:10, minChars:1, matchSubset:0, matchContains:true, cacheLength:10, autoFill:true }); } </script></head><body> <center> <div> <h4 id="labTime"></h1> <form action="test!execute" method="post"> <img src="images/psb.jpg" width="500px" height="200px"></img><br> <input type="text" name="content" size="50" id="content" /> <input type="submit" value="Search"> </form> </div> </center></body></html>
public String getList() throws Exception { System.out.println("content:(" + content + ") q:(" + q + ")"); //String[] str = {"中文","中国","国家","中文国家"}; String[] str = {"a文","a国","家a","b文国家"}; HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType("text/html;charset=utf-8"); PrintWriter out; out = response.getWriter(); List list = new ArrayList(); for(int i = 0 ; i < str.length; i ++){ list.add(str[i]); } JSONArray array = JSONArray.fromObject( list ); out.println(array.toString()); out.close(); return null; }
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>jQuery Autocomplete Plugin</title><script type="text/javascript" src="../lib/jquery.js"></script><script type='text/javascript' src='../jquery.autocomplete.js'></script><link rel="stylesheet" type="text/css" href="../jquery.autocomplete.css" /> <script type="text/javascript">$().ready(function() { var cities = ["a中文","a中国","a国家","中文国家","a"]; $("#suggest1").focus().autocomplete(cities);});</script> </head><body><h1 id="banner"><a href="http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/">jQuery Autocomplete Plugin</a> Demo</h1><div id="content"> <form autocomplete="off"> <p> <label>Single City (local):</label> <input type="text" id="suggest1" /> </p> <p> </form> </div><script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script><script type="text/javascript">_uacct = "UA-2623402-1";urchinTracker();</script></body></html>
[解决办法]
你把你的数据给我一部分,我试一下?
[解决办法]
我用的不是action,我的意思是你把你返回的data发出来一部分,我用我这的方法试一下,行得通的话你换成我的不就得了
[解决办法]
这样有问题?????
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><html><head> <script type="text/javascript" src="plugins/jquery/js/jquery.js"></script> <script type='text/javascript' src='plugins/jquery/js/jquery.autocomplete.js'></script> <link rel="stylesheet" type="text/css" href="plugins/jquery/css/jquery.autocomplete.css" /> <script type="text/javascript"> $(document).ready(function() { $("#labTime").html("time:" + new Date()); setInterval('$("#labTime").html("time:" + new Date());', 1000); //var cities = ["中文","中国","国家","中文国家"]; //$("#content").focus().autocomplete(cities,{matchContains: true,minChars: 1}); initialComplete(); }); function initialComplete(){ //var data = ["中文","中国","国家","中文国家"]; var data = "test!getList"; $("#content").focus().autocomplete(data); } </script></head><body> <center> <div> <h4 id="labTime"></h1> <form action="http://www.baidu.com/s" method="get"> <img src="images/repository.png"></img><br> <input type="text" name="wd" size="50" id="content" /><br> <input type="submit" value="Search"> <input type="button" value="Luckly"> </form> </div> </center></body></html>
[解决办法]
我这里测试是没有问题的。。。呵呵呵,不知道什么情况,你把数据换成其他的试试??
[解决办法]
给你修改了下,在不行就真没招了
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>jQuery Autocomplete Plugin</title><script type="text/javascript" src="../lib/jquery.js"></script><script type='text/javascript' src='../lib/jquery.bgiframe.min.js'></script><script type='text/javascript' src='../lib/jquery.ajaxQueue.js'></script><script type='text/javascript' src='../lib/thickbox-compressed.js'></script><script type='text/javascript' src='../jquery.autocomplete.js'></script><script type='text/javascript' src='localdata.js'></script><link rel="stylesheet" type="text/css" href="main.css" /><link rel="stylesheet" type="text/css" href="../jquery.autocomplete.css" /><link rel="stylesheet" type="text/css" href="../lib/thickbox.css" /> <script type="text/javascript"> //var data = "test!getList"; var data = ["a中文","a中国","a国家","a中文国家"]; $(document).ready(function() { $("#labTime").html("time:" + new Date()); setInterval('$("#labTime").html("time:" + new Date());', 1000); //var cities = ["中文","中国","国家","中文国家"]; $("#content").focus().autocomplete(data); }); </script></head><body> <center> <div> <h4 id="labTime"></h1> <form action="http://www.baidu.com/s" method="get"> <img src="images/repository.png"></img><br> <input type="text" name="wd" id="content" /><br> <input type="submit" value="Search"> <input type="button" value="Luckly"> </form> </div> </center></body></html>
[解决办法]
我发现和你沟通有一点小小得问题,什么叫用url有问题? 你的data不就从url返回的么?
那你调试看一下url返回的data对不对?我就不信返回的data和上面一样他就能出错。。。