如果将changeButton
类添加到每个按钮,则选择每个按钮来绑定事件处理程序会更容易:
<a href="#" class="changeButton">Same as Above</a>
然后我们可以像这样选择每个元素:
$(".changeButton").on("click", function(e) {
//select the previous jQuery Mobile select widgets, we will use just the previous two
var $allPrev = $(this).prevAll('.ui-select').find('select');
//change the value of the immediate previous select widget to the value of the one preceding it
$($allPrev[0]).val($($allPrev[1]).val()).selectmenu("refresh");
e.preventDefault();
});
这是一个演示:http: //jsfiddle.net/AFzqt/12/
此代码适用于无数按钮,因为它通过使用 HTML 结构的直观知识来工作(每个链接都使用前两个选择小部件,无论链接位于页面上的哪个位置)。