函数自动运行,无法调用Javascript函数

时间:2016-10-26 19:01:25

标签: javascript jquery

文档包含脚本

$(document).ready(function() {

        $(function reset(){
            $("#select-result").empty().html(" ");
            userInputSumm = 0;
            userInput = [];
            console.log('reser was executed!');
        });

        $("#reset").click(function() {
            reset;
            /* $("#select-result").empty().html(" ");
            userInputSumm = 0;
            userInput = []; */
        });

    });

和页面html

<p>
    <a href="#" id="reset">Reset all</a>
</p>

在页面加载时执行功能重置。

  1. 如何阻止它在页面加载时执行?
  2. 当我按下链接Reset all时,功能reset不起作用?为什么?

4 个答案:

答案 0 :(得分:2)

试一试

删除功能周围的$( )。 - 这就是它自动执行的原因。

然后在按钮put()后面的名字reset() - 这就是你在Javascript中调用函数的方法

$(document).ready(function() {

    function reset(){
        $("#select-result").empty().html("&nbsp;");
        userInputSumm = 0;
        userInput = [];
        console.log('reser was executed!');
    };

    $("#reset").click(function() {
        reset();
        /* $("#select-result").empty().html("&nbsp;");
        userInputSumm = 0;
        userInput = []; */
    });

});

答案 1 :(得分:1)

从函数声明中删除$(...)并像正常函数一样调用reset()

$(document).ready(function() {

    function reset(){
        $("#select-result").empty().html("&nbsp;");
        userInputSumm = 0;
        userInput = [];
        console.log('reser was executed!');
    }

    $("#reset").click(function() {
        reset();
        /* $("#select-result").empty().html("&nbsp;");
        userInputSumm = 0;
        userInput = []; */
    });

});

你只是希望它是一个正常的功能。当你把它放在$(...)中时,jQuery认为它是一个能够返回一组选择器的函数,所以它会立即调用它。你不想要那个。

答案 2 :(得分:0)

检查这个

&#13;
&#13;
$(document).ready(function() {

       function reset(){
            $("#select-result").empty().html("&nbsp;");
            userInputSumm = 0;
            userInput = [];
            console.log('reser was executed!');
        }

        $("#reset").click(reset);

    });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
    <a href="#" id="reset">Reset all</a>
</p>
&#13;
&#13;
&#13;

在click事件绑定中不需要匿名函数,可以直接设置为reset函数

答案 3 :(得分:-1)

删除&#34; $&#34;在你的函数之前和add()来调用函数。

  candidate.candidate_ID AS candidateID,