【发布时间】:2012-01-14 02:18:45
【问题描述】:
如果它们具有相同的“名称”,我如何找到两个不同选择下拉列表的值并将两个值添加到一起(不是提交),然后使用 jquery 将总和值放入数组中?
编辑
为了澄清一点,我正在动态创建需要看起来像这样的列表
框 A,框 A,标题
框 B、框 B、标题
方框 C、方框 C、标题 等等……
每个列表都会有所不同,而且很少会相同。下次框可能是 D E 或 F。选中时(当前为 .onchange)所有对应的框需要添加在一起,如果值不为空,则将其推入单独的数组中...
var s=[sumOfAs, sumOfBs, sumOfCs];
我希望这会有所帮助... 后端也是PHP 谢谢!
编辑
这是将第一组值推入数组的 jquery 代码...
$("#selectionBox select").change(function(){
s = [];
$("#selectionBox select option:selected").each(function(){
$("#selected_songs").text('');
var v = $(this).val();
if(v != ''){
s.push(v);
}
if(s != ""){
$('#selectionButton').show();
var mw = $("#list_month_New").val();
var dw = $("#list_day_New").val();
var yw = $("#list_year_New").val();
var t = $("#listTitle").val();
if(mw == "" || dw == "" || yw == ""){
$("#songListWarning").show();
}else{
$("#songListWarning").hide();
}
}else{
$("#list_month_New").val();
$("#list_day_New").val();
$("#list_year_New").val();
$("#listTitle").val();
$('#selectionButton').hide();
}
});
s.sort();
jQuery.each(s, function(){
O = "";
O = this+"<br />";
str = /&(.+)/.exec(O)[1];
num = O.replace(/\-.*/, '');
fullString = '<span style="color:black">'+num+'</span> - '+str;
$("#selected_songs").append(fullString);
});
我只需要弄清楚如何将另一个值添加到初始值?
【问题讨论】:
-
两个输入在一个表单中不能有相同的名字,除非名字是一个像
names[]这样的数组。 -
我的目标是允许某人从需要添加在一起的两个框中进行选择,然后在选择时显示在屏幕上。问题是我有大约 200 个项目可供选择,每个项目都有一个同伴。当它们加在一起时,只有不为空的框会显示在屏幕上,然后一旦我交叉引用了我的选择,我就可以提交。有什么想法吗?
-
@PhpMyCoder 这不是真的。我相信 php 是这样,但其他语言不是。
-
@JamesMontagne 我不是 100% 确定。在 PHP 中,您可以获取原始查询字符串并自己查找重复项。虽然我怀疑还有其他语言可以模仿 PHP 的参数解析。
-
@PhpMyCoder 不正确。浏览器会这样做:
...x=one&x=two&x=3...。然后由后端来解析它。 PHP 是我所知道的唯一一种让您添加[]的语言。
标签: php javascript jquery html