2012-02-11 8 views
1

私のスクリプトのdoSearch()コマンドが何もしない理由を理解しようとすると、約1時間(コードを入力した後)アクティブ化しません。皆さんのご協力をいただければ幸いです。ここで 私はdoSearch()をonClick経由で有効化しようとしています

は、私が持っているスクリプトです:

<script type="text/javascript"> 
/* <![CDATA[ */ 
    function doSearch() { 
     var selectedItem = document.searchForm.engines 
      .selectedIndex; 
     if (selectedItem == -1) 
      window.alert("You must select a 
       search engine."); 
     else 
      location.href = document.searchForm.engines 
       .option[selectedItem].value 
       + document.searchForm.searchTerm.value; 
    } 
/* ]]> */ 
</script> 

...そして、ここで私が持っているボタンコマンドです:

<input type = "button" value="Search" 
    onclick = "doSearch()" /></p> 

は、私が見逃している何かありますか? :/

+0

説明が必要です。あなたはページ上にJavasScriptエラーを受け取りますか? doSearch関数が呼び出されていないと確信していますか? –

+0

これは問題です...何らかのエラーがあることを示すために何も表示されません。 doSearchが呼び出されたかどうかはわかりません。私が作成したSearchボタンとdoSearch関数に(おそらく)リンクされているので、何もしません。それは終わりまで私を混乱させる。 –

+0

さて、Javascriptのデバッガには助けとなるものがたくさんありますが、セットアップ/テストの環境がわかりません。テストする低レベルの方法は、doSearchの最初の行としてアラートを追加することです。そうすれば、少なくとも関数が呼び出されているかどうかを知ることができます。そうであれば、内部コードをデバッグします。 –

答えて

2

うん。あなたは偽を返すのを逃した。それなしで、あなたのonclickイベント

<input type = "button" value="Search" 
onclick = "doSearch();return false" /></p> 

に、フォームはあなたの警報

の新しい行がそう

window.alert("You must select a 
      search engine."); 

なることエスケープする必要があります。また代わり

を提出されました

window.alert("You must select a\ 
      search engine."); 
+0

これらの問題を修正しましたが、ボタンを押しても検索エンジンには行きません。他に何か? –

+0

@Mattので、最終行が間違っている可能性があります。それをデバッグ/警告することを試みなさい –

+0

更新を得た:私は最終的に働くために検索ボタンを得ることをどうにかして...今問題はそれが単に検索エンジンのページに行き、私が検索しようとしている値持ち越されていません。また、検索バーに何も入力しないと、私のwindow.alertが出てこない。 –

関連する問題