我有一个select
,type multiple
,所以我需要循环将每个值逐个发送到数据库。
这是我到目前为止所做的,但我的$.each
正在返回0 1 2 3
。
我该怎么做?
HTML:
<select multiple="multiple" id="sel">
<option>All</option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
js:
$("#send").click(function(){
var sel = $("#sel").val();
$.each(sel, function(e){
alert(e); // should come the text of each one
});
});
感谢。
答案 0 :(得分:1)
您显示key
而非value
。试试这个
$.each(sel, function(key,value){
alert(value); // should come the text of each one
});
答案 1 :(得分:0)
如果我理解得很好,你想要检索每个值的html内容。
所以你应该这样做:
$.each(sel, function(index, element){
alert(element.html());
});
答案 2 :(得分:0)
e = index,而不是数组元素
$.each(sel, function(e){
alert(sel[e]); // should come the text of each one
});
答案 3 :(得分:0)
假设您的意思是服务器端数据库,下一步是设置一个服务器端应用程序,该应用程序可以将行插入您从jQuery发送它的数据库中。
On the jQuery side您可能需要以下内容:$.post(someurl, sel);
这是基于您的问题所做的假设,但我实际上并不确定您希望sel包含在这里。您可能需要查看jQuery.serialize or serializeArray。
答案 4 :(得分:0)
你需要$ .each中的值,而不是索引。 jQuery.each将这两个参数提供给你的回调函数。