6

エラーを出します。の直前にコードを配置しました</body>。それでもエラーが発生します。

<form action="" method="get" id="searchform" >
<input name="q" type="text" id="search" size="32" maxlength="128" class="txt">
<input type="button" id="hit" value="Search" onclick="myFunction();return false" class="btn">   
</form>

JS、

<script type="text/javascript">
    var nexturl = "";
    var lastid = "";
    var param;
    $(document).ready(function () {
        function myFunction() {
            param = $('#search').val();
            alert("I am an alert box!");
            if (param != "") {
                $("#status").show();
                var u = 'https://graph.facebook.com/search/?callback=&limit=100&q=' + param;
                getResults(u);
            }
        }
        $("#more").click(function () {
            $("#status").show();
            $("#more").hide();
            pageTracker._trackPageview('/?q=/more');
            var u = nexturl;
            getResults(u);
        });
    });
</script>
4

4 に答える 4

12

myFunctionの後には配置できませんonclick。が見られる場合、onclickの定義はありませんmyFunction

<head>タグに JavaScript を配置します。また、関数を の外に移動しますready()

このような:

<script type="text/javascript">
var nexturl ="";
var lastid ="";
var param;

function myFunction() {
    param = $('#search').val();
    alert("I am an alert box!");
    if (param != "") {
        $("#status").show();
        var u = 'https://graph.facebook.com/search/?callback=&limit=100&q='+param;
        getResults(u);
        }
}

$(document).ready(function() {

  $("#more").click(function () { 

    $("#status").show();
    $("#more").hide();  
    pageTracker._trackPageview('/?q=/more');
    var u = nexturl;
    getResults(u);
  });

});
</script>
</head>
<body>
...
于 2013-03-02T06:00:03.620 に答える
4

myFunction を script タグに直接保持する

 i.e
   <script>

function myFunction() {
  .....  
}
 </script>
于 2013-03-02T06:00:20.853 に答える
1

jQueryドキュメントから:

.ready() に渡されたハンドラーは、DOM の準備が整った後に実行されることが保証されているため、これは通常、他のすべてのイベント ハンドラーをアタッチして他の jQuery コードを実行するのに最適な場所です。

したがって、 onclick が確立されるまで、関数は作成されません。したがって、関数を見つけることができません。の外に移動する必要があります$(document).ready(function(){})

于 2013-03-02T06:02:05.563 に答える