百度和淘宝并没有正式的提供一个公开API给我们用,但是经过分析他们的源代码,还是找到了解决方法。
/*baidu&taobao callback*/function dachie(d) { if (d.s) return d.s else { return d.result.map(function(item) { return item[0] }); }};
以上是我分析了他们的数据结构做的一个callback函数。首先是百度:
$.get("http://suggestion.baidu.com/su?wd=" + el.value + "&json=1&p=3&cb=dachie",function(data) { var list = eval(data);//eval必须 console.table(list); //这里根据自己的展示形式render list});
然后是淘宝:
$.get("http://suggest.taobao.com/sug?code=utf-8&q=" + el.value + "&callback=dachie","",function(data){ var list = eval(data);//eval必须 console.table(list); //这里根据自己的展示形式render list},"text");//关键点,指定dataType 为 text
以上代码,经过测试有效。
新闻热点
疑难解答