在MVC 5网站上工作。我有一个特定的行,单击一个按钮,该行及其所有控件都被克隆。这是克隆的主行...
T1 T2 R(A) A=A-50 W(A) R(A) A=A+20 W(A)$(".grouping").change(function() { // loop thru all selecting dropdowns $("select option:selected").each(function () { alert($(this).attr('id') + '>>>' + $(this).text()); if ($(this).hasClass('grouping')) { // do the comparison, blah blah blah alert($(this).val()); } else { // for debug alert('class: ' + $(this).attr('class')); } }); });
行div的添加/克隆效果很好。现在,我想做的就是这个。当我在下拉列表中选择一个新项目时,使用类"分组"然后将它与PREVIOUS"分组"进行比较落下。如果它们相等,则将div的背景颜色设置为不同的"交替"颜色。 (基本上这样做的目的是这是一个高级数据过滤模式,我想对组进行颜色编码。因此,如果前2个下拉列表是组1,则背景为白色,组2是交替颜色,组3是白色等等...只是为了在美学上帮助用户看到他的"行和#34;行。希望这是有道理的。)
问题是我似乎无法访问class或id属性等等......作为测试代码我写了这个:
getUserMedia
问题是attr(' id')和attr(' class')显示 undefined 。我能做错什么?我相信我正试图正确访问这些属性?
其次,对于主循环,当然,它通过所选的所有下拉菜单循环。我希望它只能通过' 分组'类。有没有更有效的方法来实现这一目标?谢谢!
答案 0 :(得分:1)
我只是想评估每个下拉列表中具有“分组”类的选定值。
您可以使用类选择器定位元素,然后使用.val()
$(".grouping").each(function () {
alert($(this).val());
});
答案 1 :(得分:1)
您正在遍历所有选定的option
字段。
您需要遍历select
元素。
所以,我认为你只需改变这一行:
$("select option:selected").each(function () {
对此:
$("select").each(function () {
希望它可以帮助你。