2017-02-20 15 views
-2

私のJavascript関数は、私が期待していたように動作していません。私はこのページを実行する場合Javascript関数は直感的には機能しません

function submitDetailsForm() { 
    if (this.Attr("value") == "Add") { 
    alert("Add"); 
    } 
    alert("Not"); 
} 
<button type="button" name="submit" id="remove" value="Remove" onclick="submitDetailsForm()">Remove</button> 
<button type="button" name="submit" id="add" value="Add" onclick="submitDetailsForm()">Add</button> 
<button type="button" name="submit" id="edit" value="Edit" onclick="submitDetailsForm()">Edit</button> 

は、(より多くのコードがあるが、それは問題とは無関係です)、その後、私は警告がで行かない「を追加し、」追加ボタンを使用しますが、どちらも行われません"not"警告。私はそれが単に構文に失敗する可能性があるので、警告の追加について気にする必要はありませんが、いずれにしても、関数が実行されていれば必ず警告を発してはいけません。私は関数が実行されていることを確信しています。なぜなら、not警告をif文の上に移動すると、それが実行されるからです。 どんな助けでも大いに感謝します。

[解決済み] オブジェクトを関数に渡すというアイデアを使用して問題を解決しました。私も実際にスクリプトタグでJQueryを使用していたことを宣言するのを忘れていました。 解決済みコード:

<button type="button" name="submit" id="remove" value="Remove" onclick="submitDetailsForm(this)">Remove</button> 
    <button type="button" name="submit" id="add" value="Add" onclick="submitDetailsForm(this)">Add</button> 
    <button type="button" name="submit" id="edit" value="Edit" onclick="submitDetailsForm(this)">Edit</button> 

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
    <script> 
     function submitDetailsForm(obj) { 


      if ($(obj).attr("value") == "Add") { 
       alert("Add"); 
      } else { 
       alert("Not"); 
      } 


     } 
    </script> 

*

+0

オープンコンソールで、このオブジェクト。それは何と言いますか?どのようなJS文書で 'Attr'メソッドが見つかりましたか? –

+0

ブラウザのデベロッパーツールを開き、コンソールを確認します。エラーメッセージが表示されます。コンソール(および一般的な開発ツール)は、Web開発を行う上で不可欠な部分です。 –

答えて

0

パス機能

<button type="button" name="submit" id="remove" value="Remove" onclick="submitDetailsForm(this)">Remove</button> 
<button type="button" name="submit" id="add" value="Add" onclick="submitDetailsForm(this)">Add</button> 
<button type="button" name="submit" id="edit" value="Edit" onclick="submitDetailsForm(this)">Edit</button> 


<script> 
    function submitDetailsForm(obj) { 


     if (obj.value == "Add") { 
      alert("Add"); 
     } else { 
      alert("Not"); 
     } 


    } 
</script> 
関連する問題