2013-08-12 65 views
0

我如何实现相同的功能?

筛选:

response_status = $(server_response).filter( “response_status”)VAL();

grep的:

response_status = $ grep的($(server_response),函数(值,i)的{ 回报(value.indexOf( 'response_status')== - 1);});

不幸的是,这条线只是告诉我,那indexOf()TypeError: value.indexOf is not a function,并不知道为什么。

,我有一个jquery Ajax调用在这里我想用这种兼容性,我相关的代码部分:

$.ajax({ 
    type:'POST', 
    url:'ajax.php', 
     contentType: "application/x-www-form-urlencoded;charset=ISO-8859-2", 
    data:{p1:p1, 
      }}) 
    .done(function(server_response) { 
     response_status = $(server_response).filter("response_status").val(); 
    }) 

回答

1

如果你得到的indexOf()不是一个函数,那么就意味着你的服务器响应不是String类型的。在执行indexOf()之前,请检查'value'的类型。

+0

是真的,因为我的server_response是一个数组:S – czupe

+0

但是如果你看到这个例子,也用作数组: http://answers.oreilly.com/topic/1613-how-to-filter-arrays-与-jquery-grep /,该值的顶部不是一个函数不是server_response – czupe

+0

要调试此问题,我会建议你在.done处理程序中添加更多的日志语句。首先尝试打印'server_response'变量的类型。然后检查尝试打印这个varibale – vijayP