函数调用中的jQuery无法正常工作

时间:2017-04-27 16:23:11

标签: jquery html

如何调用搜索功能?在搜索功能之外写的很多代码所以我想执行所有代码我该怎么做才能帮助我。

jQuery的:

$(function(){
        function search(){
            alert("Hello World");
    }
})

HTML代码:

<select onchange="search();">
    <option value="1">Hello</option>
</select>

1 个答案:

答案 0 :(得分:6)

您从onxyz调用的任何函数 - 属性样式事件处理程序必须是全局函数。这是不使用它们的众多原因之一。您的search不是全局的,它很好地包含在您的ready处理程序中。哪个好,全局变形就是Bad Thing™。

ready回调中加入该功能。 select元素的任何选择器都可以;这是一个使用ID的示例,但它不必是ID:

<select id="the-select">
    <option value="1">Hello</option>
</select>

$(function(){
    $("#the-select").on("change", search);
    function search(){
            alert("Hello World");
    }
})

如果您没有从任何其他代码中拨打search,可以将其合并:

$(function(){
    $("#the-select").on("change", function search(){
    // Name here is optional --------------^--- but handy for debugging
    // if an error is thrown in the function
        alert("Hello World");
    });
})