2014-09-19 104 views
0

选择多个值查询我有一个选择列表,我可以通过获取用户ID:从选择列表

$('#lstUsers :selected').each(function(i, selected){ 
    console.log ($(selected).val()); 
}); 

我需要收集所有这些值,然后运行后续查询,从而

从myTable中选择*其中id =(id或id2或id3 ...或idN)

什么是一种很好的方法来实现这一目标?

+1

使用IN操作符。会更快,并且可以让你添加所有的标准, – Satya 2014-09-19 02:58:30

回答

1

可以做这样的事情:

var ids = []; 
$('#lstUsers :selected').each(function(i, selected){ 
    ids = ids.concat($(selected).val()); 
}); 
var query = "Select * from myTable where id in (" + ids.join(",") + ")"; 
1

Satya的评论是正确的,因为IN可能更快,并且可以更容易地生成SQL。

但是你的问题更基本吗? (你的js不是基本的,但mysql问题似乎是,所以我不确定。)我们问你如何从运行javascript的页面查询服务器?如果是这样,答案是ajax call。该URL将有一个脚本运行并调用请求数据(可能使用IN)然后输出它(可能使用JSON)。你的js收到它并用返回的数据做它需要的东西。