无论哪个下拉列表发生变化,我都试图让jQuery函数触发。页面上有几个下拉菜单。我试过了
$(document).ready(function () {
$('select').each(function () {
CalcOral();
});
});
我还没想到的几个问题:
由于 香农
答案 0 :(得分:1)
尝试jQuery .change()
$('select').change(function(){ CalcOral();});
答案 1 :(得分:1)
- 在负载上,每次下拉列表都会触发CalcOral。我只需要点燃一次。
醇>
所以只需在准备好的功能中调用一次
当我更改下拉菜单时,CalcOral不会触发。没有 错误,但它没有运行。
在ready函数中绑定onchange事件
$(document).ready(function () {
CalcOral(); // prob1 solved
$('select').change(function () {
CalcOral(); // prob 2 solved
});
});
答案 2 :(得分:0)
在加载时运行该函数,并在更改时再次运行:
function CalcOral() {
// do stuff;
}
jQuery(document).ready(function ($) {
$('select').change(function () {
CalcOral();
});
CalcOral();
});
<强> Demo 强>
答案 3 :(得分:0)
你让它变得太复杂了,这里有一条很短的路线,可以满足您的需求:
$('select').change(CalcOral);
这是'on'上更通用的jQuery绑定功能的快捷方式:
$('select').on("change",CalcOral);
答案 4 :(得分:0)
由于你的.each循环,每次下载都会触发。它没有触发更改因为你没有绑定它(并且可能你没有为选择添加onchange函数)。
我推荐两件事: 1.直接从你的onload运行CalcOral()。
$(document).ready(function () {
CalcOral();
});
将onchange函数调用添加到html或jquery绑定事件。对于这种情况,.change会起作用,但jQuery通常会推荐使用稍微多功能的.on函数。两者都能起作用,取决于你。
$('select').change(function(){
CalcOral();
)};
每次更改任何选项时,绑定事件都会运行。