0

我对为什么以下不起作用有点困惑,我尝试了 2 件 jquery/javascript

所以我有一个用于我的移动视图的下拉菜单 9 我已经结合了我尝试创建链接的两种方式

   <select id="nav-select">
    <option value="/public_pages/faq">FAQ</option>
    <option value="vacancy"><%= link_to 'Create Vacancy ', new_vacancy_path %></option>        
   </select>

我试图获取窗口位置并链接到正确 url 的 JavaScript

$('#nav-select').change(function(){
var url = $(this).val();
window.location = url;
});

document.getElementById("nav-select").addEventListener('change',function () {
window.location = this.value;
 },false);

当我选择一个选项时没有任何反应

有什么想法吗?我是否错误地使用了选择标签?

谢谢

4

1 回答 1

2

如未定义所述,将您的脚本放在文档就绪处理程序中将解决此问题。为了进一步解释,我敢打赌您在实际文档标记之前定义了脚本。这将使 jQuery 搜索文档中尚不存在的元素。

通过将其放入文档就绪处理程序中:

$(document).ready(function(){
    $('#nav-select').change(function(){
        var url = $(this).val();
        window.location = url;
    });
});

您实际上是让脚本等到页面完成加载,并且#nav-select在执行代码之前该元素存在于文档中。

于 2013-02-13T23:35:23.450 回答