5

まず第一に、onclick属性を使用してif / elseステートメントをhtmlに直接書き込むことさえ可能ですか?もしそうなら、なぜ私のコードが機能しないのですか?

つまり、これはボタンです。「Calc.Input.value」はテキスト入力を指し、そのフィールドが0または空白の場合にエラーメッセージを表示したいと思います。他のすべての場合、あなたが見ることができるように、私は他のいくつかのことを起こさせたいです。ただし、「else」の後のすべてが以前は正常に機能していたため、これは関係ありません。

<INPUT TYPE="button" NAME="drop" id="dropbutton" style="background-color:#D1E8D5;" VALUE="
Släpp ankare " OnClick="if ("Calc.Input.value == ''" || "Calc.Input.value == '0'")
{window.alert("Please enter a number");} else 
{document.getElementById('dropbutton').value=' Justera 
längd ';document.getElementById('length').innerHTML =
Calc.Input.value;document.getElementById('dropbutton').style.cssText = 'background-
color:#FFF6B3;';}">
4

5 に答える 5

23

onclick属性に入れないでください。

使用する

<INPUT TYPE="button" NAME="drop" id="dropbutton" style="background-color:#D1E8D5;" VALUE="Släpp ankare ">
<script>
document.getElementById('dropbutton').onclick = function() {
    if (Calc.Input.value == '' || Calc.Input.value == '0') {
         window.alert("Please enter a number");
    } else {
        document.getElementById('dropbutton').value=' Justera längd ';
        document.getElementById('length').innerHTML = Calc.Input.value;
        document.getElementById('dropbutton').style.backgroundColor = '#FFF6B3';
    }
    return false;
}
</script>
于 2013-03-12T19:39:56.807 に答える
4

"コードが機能しない理由は、引用符をエスケープする必要があるためです。そうしないと、HTML属性シンボルとして解釈されます。

そして私は他の人たちに同意します、あなたのJavaScriptをあなたのHTMLの中にインラインで書くことは悪い習慣です。

于 2013-03-12T19:40:05.720 に答える
2

sweetamylaseの回答が最適ですが、次のことも検討してください。

onclick =割り当てが二重引用符で囲まれている場合(onclick = "...")、それらの二重引用符内で一重引用符のみを使用してみてください(またはその逆)。

これにより、要素を動的に挿入するときにonclickイベントに割り当てる必要があり、個別のスクリプト関数を使用することは実際には適切なオプションではない場合に、作業が簡単になります。

例:

<button onclick="alert('Do this'+' and that')">Press This</button>
于 2015-01-01T03:56:07.307 に答える
2

うーん、でもこのようなものはどうですか?

<a href="#" onclick="if (a_function_to_get_language() == 'en') {
    alert('Some message');
}
else {
    alert('Some message in a different language');
}">Action</a>
于 2015-08-19T21:14:11.160 に答える
0

  • ナビゲーションページのアラート
  •            <script>
                  function myFunction() {
                alert("You Are Not Signed In!");
                       }
                     </script>
    
    于 2017-04-11T12:19:14.457 に答える