在页面加载时调用jQuery函数一次
我已经定义了一个jQuery函数,它在输入更改时运行(显示/隐藏某些div)。到目前为止还不错 我的问题:加载页面时如何调用此函数一次? 由于缺乏经验,我只是在尝试迄今为止找到的答案(将函数拖到文档就绪声明之外,等等)时把事情弄得更糟。我想函数必须保持在原来的位置,但是调用它们似乎还不起作用。剧本:在页面加载时调用jQuery函数一次,jquery,function,events,call,pageload,Jquery,Function,Events,Call,Pageload,我已经定义了一个jQuery函数,它在输入更改时运行(显示/隐藏某些div)。到目前为止还不错 我的问题:加载页面时如何调用此函数一次? 由于缺乏经验,我只是在尝试迄今为止找到的答案(将函数拖到文档就绪声明之外,等等)时把事情弄得更糟。我想函数必须保持在原来的位置,但是调用它们似乎还不起作用。剧本: jQuery(document).ready(function($) { $('input[name=project-type]').change(chooseProject);
jQuery(document).ready(function($) {
$('input[name=project-type]').change(chooseProject);
function chooseProject() {
var val = $(this).val();
$('#div1').hide();
$('#div2').hide();
$('#div3').hide();
if (val == 'Short') {
$('#div1').show();
}
else if (val == 'Long') {
$('#div1').show();
$('#div3').show();
}
}
});
一些背景:输入是一个单选按钮,通过一个多步骤的联系人表单,所选的选项会在新的页面加载中被记住,但是如果没有更改事件,该功能不会启动
经过数小时的努力帮助,我真的很感激 您可以在绑定该元素后更改该元素上的事件。这将执行处理程序,就像它是由用户自然触发的一样
我想试试这样的东西:
jQuery(document).ready(function($) {
//function declaration
$('input[name=project-type]').on('change', chooseProject);
$('input[name=project-type]').trigger('change');
});
您可以在绑定该元素后更改该元素上的事件。这将执行处理程序,就像它是由用户自然触发的一样
我想试试这样的东西:
jQuery(document).ready(function($) {
//function declaration
$('input[name=project-type]').on('change', chooseProject);
$('input[name=project-type]').trigger('change');
});
谢谢,我正在努力,虽然还没有成功。我怀疑原因可能是在页面加载后粘贴了被记住的输入,因为在切换之前,我可以短暂地看到选择的默认选项。我猜触发器执行得太早了?不确定您是否有建议,我可以接受这一点,因为它回答了原始问题。如果在绑定
change
事件后添加了输入,则它将不起作用,因为jQuery的目标元素当时不存在(或者在页面加载时被新元素替换)。但是,您可以在替换输入后绑定事件并触发更改。输入元素存在,所选选项(值)在页面加载后不久更改。抱歉说不清楚。但是如果选择的选项是通过另一个(插件)脚本更改的,那么这不算更改事件吗?或者用户是否需要手动选择一个选项?如果以这种方式更改所选选项,则在我的经验中,它并不总是触发更改事件。在通过另一个脚本选择选项后,是否可以添加.trigger('change')
?那应该行。谢谢,我正在努力,虽然还没有成功。我怀疑原因可能是在页面加载后粘贴了被记住的输入,因为在切换之前,我可以短暂地看到选择的默认选项。我猜触发器执行得太早了?不确定您是否有建议,我可以接受这一点,因为它回答了原始问题。如果在绑定change
事件后添加了输入,则它将不起作用,因为jQuery的目标元素当时不存在(或者在页面加载时被新元素替换)。但是,您可以在替换输入后绑定事件并触发更改。输入元素存在,所选选项(值)在页面加载后不久更改。抱歉说不清楚。但是如果选择的选项是通过另一个(插件)脚本更改的,那么这不算更改事件吗?或者用户是否需要手动选择一个选项?如果以这种方式更改所选选项,则在我的经验中,它并不总是触发更改事件。在通过另一个脚本选择选项后,是否可以添加.trigger('change')
?这应该行得通。