Javascript 为什么我无法将这些结果推送到数组中?
我正在努力改变Javascript 为什么我无法将这些结果推送到数组中?,javascript,jquery,ajax,xml,Javascript,Jquery,Ajax,Xml,我正在努力改变 results=$(“x”,xmlResponse).map(函数(){ 到 results.push=$(“x”,xmlResponse).map(函数(){ 但这样做可以防止出现任何自动完成的建议 如果我只是再次删除“推送”,则自动完成建议将正确显示,没有问题 如何正确使用results.push?push是一种方法,而不是属性 你不能把它当作财产 results.push = $("Game", xmlResponse).map(function() { 为了将元素推入结
results=$(“x”,xmlResponse).map(函数(){
到
results.push=$(“x”,xmlResponse).map(函数(){
但这样做可以防止出现任何自动完成的建议
如果我只是再次删除“推送”,则自动完成建议将正确显示,没有问题
如何正确使用results.push?
push
是一种方法,而不是属性
你不能把它当作财产
results.push = $("Game", xmlResponse).map(function() {
为了将
元素推入结果
,结果
必须是一个数组
像这样
var results =[];
results.push("your things");
使用.get()
从.map()
“结果”当前的定义是什么?尝试在之前添加var results=[]
。推送
如果results
是[]
,则推送
是一种方法-您应该调用它(results.push(element)
),而不是重新分配它(results.push=element
)。这可能不会满足您的需要,因为它会将您从map
获取的整个数组作为一个元素推送到results
,而不是单个元素-因此,您需要results.push.apply(results,arrayOfElements)
。您希望从=推到()有什么原因吗?因为results.slice(0,5)正在对数组执行操作。如果您[].push($.map())您的数组将有一个元素,这是一个数组。您的数组可能在[].concat($.map(…)之后。我想您需要concat()下面提到的人,$.fn.map(这是您在执行查找映射后使用的元素)返回包含结果集的jQuery对象。若要获取基本数组,请执行get()。GetMovie函数中.get()的正确语法可能是什么?我正在尝试results=$.map(列表,函数(v,I){return{label:v.Title+'('+v.Year+'))“,value:v.Title};}”).get()
但我得到错误“TypeError$.map(…)不是函数”。如果使用$.map()
results = $("Game", xmlResponse).map(function() {
return {
value: $("GameTitle", this).text()
+ ", "
+ ($.trim($("ReleaseDate", this).text()) || "(unknown date)")
};
}).get()