0

これはJavaスクリプトの私のプログラムです。検索を押しても何も表示されませんが、関数button-pressed()は完全に孤独に機能しますが、フォーム付きのコードを使用してテキストから文を取得すると機能しません.しかし、多くの場所で結果を印刷しようとすると、最初の for ループで他のすべてが問題ないことに気付きます。これまでのところ、理由はわかりません。コードがあるので助けてください:

        <?xml version = "1.0" encoding = "utf-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    <!-- Fig. 11.5: SearchingStrings.html -->
    <!-- String searching with indexOf and lastIndexOf. -->
    <html xmlns = "http://www.w3.org/1999/xhtml">
       <head>
          <title>
             Searching Strings with indexOf and lastIndexOf
          </title>
          <script type = "text/javascript">
             <!--


             function buttonPressed() 
             {

               // var searchForm = document.getElementById( "searchForm" );
                var inputVal = document.getElementById( "inputVal" ).value;
                var arr = inputVal.split(" ");

                arr.sort();

    for(var i = 0; i< arr.length; ++i) {
        var num = arr[i];
        counts[num] = (counts[num] ? counts[num] : 0) + 1 ;

                    document.writeln(arr[i]+"</br>");
    }

    document.writeln("xxxxxxxxxxxxxxafter forrrrrrrr");
    document.writeln("<table border=\"4\">");
    document.writeln("<caption><h3>Search's Results: <h3/></caption>");
    for (var i in counts) {
        document.writeln("<tr><td>"+i+" :</td><td>"+counts[i]+"</td></tr>");
    }
    document.writeln("</tbody></table>");

             } // end function buttonPressed
             // -->
          </script>
       </head>
       <body>
    <form action = "">
             <h1>The string to search is:<br />
                 </h1>
             <p>Enter Sentence  You want  To Find The Occurrence Of Each Word In It :
             <input id = "inputVal" type = "text"    />
             <input name = "search" type = "button" value = "Search"
                    onclick = "buttonPressed()" /><br /></p>


          </form>
       </body>
    </html>
4

1 に答える 1

2

スクリプトでcounts変数が定義されていないようです。それを宣言してから試してください。

JsFiddle デモ

于 2013-10-23T21:26:55.850 に答える