5

違いは何ですか:

<div onclick="return function()"></div>

<div onclick="function()"></div> 

彼らは私のために同じことをしているようで、どちらを使用すればよいかわかりません。

4

3 に答える 3

10

たとえば<form onsubmit="return validate();">...、validate() が false を返した場合、送信はキャンセルされます。

を使用<form onsubmit="validate();">...すると、validate() の戻り値に関係なく、送信が続行されます。

于 2012-07-19T11:50:53.373 に答える
2

言葉で説明..

1 つは属性が存在する要素に値を返し、もう 1 つはそうしません。

要素のデフォルトのクリック方法を使用すると、暗黙的にtruereturn function ()に変換される値に評価される場合にのみ実行されます。function ()

falseの場合、 onclickプロパティの実行後にクリック イベントの評価が停止します。


onclick="function ()"要素のデフォルトのクリックプロパティの場合、関数が何を返すかに関係なく、常に実行されます。


何が起こっているかの詳細な情報を含むスニペットの例..

function some_func () { return false; }

<a href="http://google.com" onclick="return some_func()">
  link #1
</a> <!-- user will never end up at google -->

もちろん、ブラウザでJavaScriptが有効になっている場合..

<a href="http://google.com" onclick="some_func()">
  link #1
</a> <!-- user will always end up at google -->

于 2012-07-19T11:54:17.090 に答える
1

違いがあります。returnを書き込むと、returnがtrueかfalseかがチェックされ、returnがtrueの場合にのみアクションが実行されます。それ以外の場合は処理されます。

于 2012-07-19T11:52:03.377 に答える