我在某个类中有一些选择,当更改事件发生在任何这些选择时,我想执行以下操作:搜索发生更改事件的所选值的所有选择,当发现我想交换这两个值。更改所选选项的值
不适举一个例子:
<div id="l1col1" class="selects1">
<select onChange='swap(newVal, oldVal);'>
<option selected>3</option>
<option>2</option>
<option>1</option>
</select>
</div>
<div id="l1col2" class="selects1">
<select onChange='swap(newVal, oldVal);'>
<option selected>2</option>
<option>3</option>
<option>1</option>
</select>
</div>
<div id="l1col3" class="selects1">
<select onChange='swap(newVal, oldVal);'>
<option selected>1</option>
<option>2</option>
<option>3</option>
</select>
</div>
我的选择中没有一个可以具有其他的相同的值:永远不会有1或2或3 更多然后一次。
这是我的交换功能
function swap (x,y){
//alert($(x).find(":selected").text());
var tt = $(x).find(":selected").text();
alert(tt + y);
$('.selects2 :selected:contains("' + tt + '")').text("' + y + '");
}
的问题是,当我打电话更改事件可以说在其中包含3的第一选择,并与1改变它,交换功能改变了有1个选择作为选择3,但也改变选择,我又变成了3。
你能帮我解决这个问题吗? 我希望我足够清楚
你怎么能交换值时,每个只选择具有1倍的值开始吗? –
swap(newVal,oldVal);应该交换(“newVal”,“oldVal”); –
你能提供jsfiddle吗? –