【发布时间】:2014-06-11 11:20:48
【问题描述】:
当我转到其他页面时如何触发 javascript(或 jquery)事件?
例如:
- 我在 index.html
- 在index.html,我点击了contact.html链接;
- 当我进入contact.html页面时,我需要触发一个事件
感谢您的关注
编辑:
我会尝试用其他方式解释:
我正在使用 RubyOnRails。我有一个可以添加联系人的页面。有很多字段,但在这个例子中我只使用两个:
<select name='type' id='type_select'>
<option value='0'></option>
<option value='1'>Home</option>
<option value='2'>Work</option>
</select>
<input type="text" name="contact_name" id="contact_name_input">
在我的 Javascript 上,我有:
// this only works if I press CTRL+F5 to refreash the page
$(document).ready(function(){
$("#contact_name_input").hide();
});
// This Works fine
$('#type_select').change(function(){
if ($(this).val() == 1 || $(this).val() == 2){
$("#contact_name_input").show();
} else {
$("#contact_name_input").hide();
}
});
换句话说,我需要的是在用户访问页面时隐藏输入字段,并仅在他选择了有效类型时才显示。
我希望更清楚
感谢您的关注
【问题讨论】:
-
据我了解stackoverflow.com/a/7080331/2260614 可能会有所帮助..!!
-
kapa 和@ElmoVanKielmo .. 这个问题与您建议的问题不重复。我的问题是不同的。当我第一次访问页面时,会调用 document.load 事件。但是在同一个站点,如果我单击另一个页面,则不会再次调用此 document.load。我必须刷新页面(CRTL+f5)才能再次调用 document.load 事件
-
@PSantos 如果有其他详细信息/示例代码可以添加到您的问题中以改进它,请这样做。
-
嗨@xDaevax,让我尝试更详细地解释我想要什么:-我有一个页面:contact.html.erb,在那个页面上我有一个div:`....` - 在我的“app/assets/javascript/application.js”我有这个代码:` $(document).ready(function(){ $("#message_box"). hide(); } ` 如果我第一次访问 localhost:3000/contacts/contact,javascript 工作。如果我按 CTRL+F5 它也工作,但如果我来自其他页面,如 localhost:3000/contacts/索引它不起作用
-
用 CSS 隐藏它并仅在更改事件中显示它怎么样?
标签: javascript jquery html events