从选择列表中选择多个值的查询

时间:2014-09-19 02:55:44

标签: javascript mysql

我有一个选择列表,我可以通过以下方式获取用户ID:

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

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

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

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

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

可以这样做:

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