2010-12-22 80 views
0

我有另一个jQuery问题。对于有很多数据库活动的用户控件,我想使用jQuery将所有下拉列表中的选定值设置为它们的“当前”值。我想这样做,使页面看起来已完成数据库调用。jQuery - 设置所有下拉列表的选定值第

我的jQuery技能不是最好的,但我相信我需要使用pageLoad()。而且,由于每个下拉是用户控件中,我可以寻找那些具有“usrControl”

$('select[id ^="usrControl"'].each(function(){ 
    var selectedValue = $(this).val() 
    $(this).val(selectedValue) 
}); 

像这样的事情是我心目中开始下拉菜单。

谢谢

+1

上面没有任何作用,因为它的值设置为它已经是...你能成为一个更具体一点关于你想要什么将其设置为? – 2010-12-22 18:45:20

+0

我在下拉菜单之间有一个父 - >子关系。当'a'改变数据库调用完成'b'时。在此期间发生回发,我希望将页面中所有下拉列表的选定值设置为之前的选择(如果仍然可用),以避免在UI上出现烦人的AJAX回发效果。我希望这一点很明确,只要页面发生变化,我们就可以通过将页面上所有下拉菜单的当前选择设置为其先前值来实现此目的。 – Tgibson 2010-12-22 18:50:11

回答

0

我认为一种方法是在页面加载时保存滑块的默认值。要做到这一点,你可以将数据的控制与当前值像添加:

$(selector).each(function() { 
    $(this).data('default_val', $(this).val()); 
}); 

和数据库更新完毕后,就可以“重置”的值。

$(selector).each(function() { 
    $(this).val($(this).data('default_val')); 
}); 

你应该用正确的选择器ofc来改变选择器。 :)

也许这也是一个想法,通知用户一个成功的更新。其他然后只是休息选择。因为我认为用户可能使用默认值进行提交?

看看这个简单的例子@的jsfiddle:http://jsfiddle.net/Lw7m8/

相关问题