OnclickのJavaScriptの違いは通常有用ではなく、気づかれていませんが、何かがうまくいかないと少し落ち込んでいます。説明は次のとおりです。
以前は非常にカジュアルでしたが、.NETのLinkbuttonが<a href = "javascript:fun();" ...>の形で使用されているように見えることがわかりました。今日、私はこの方法を使用していくつかの問題に遭遇しました。ネチズンの記事と私の結論を以下に取ります。
1.リンクされたOnClickイベントが最初に実行され、その後、HREF属性(ページジャンプ、またはJavaScript Pseudo-Link)の下でのアクションが続きます。
2.リンクにHREFとOnClickの両方があると仮定すると、HREF属性の下のアクションを実行しないようにする場合、OnClickはfalseの返品値を取得する必要があります。信じられない場合は、GoGoogle関数のreturn falseをコメントすることができます。
3.ページが長すぎてスクロールバーがあり、リンクされたオンクリックイベントを通じて操作を実行する場合。そのhref属性は、javascript:void(0)に設定する必要があります。 #の代わりに、不要なページジャンプを防ぎます。
4.リンクされたHREF属性で戻り値を持つ関数が呼び出された場合、現在のページのコンテンツはこの関数の返品値に置き換えられます。
5.シフトキーを押し続けると、ある程度の違いがあります。
6.今日私が遭遇した問題は、parentNodeにHREFの形でIE6.0でアクセスできないことです。
7. JavaScript:ProtocolをAのHREF属性として使用しないようにしてください。これは、Window.Onbeunloadイベントの不必要なトリガーを引き起こすだけでなく、IEでGIFアニメーション画像の再生を停止します。
それだけですが、私はそれに多くの時間を費やしました。
[理由]
CheckboxListコントロールを使用する場合、各チェックボックスをリンクする機能を実装する必要があります。いくつかの機能を達成するためにリンクをクリックすることに加えて、チェックボックスを選択する必要もあります。
<入力型= "チェックボックス" name = "chk" id = "chk">
<label for = "chk"> select it <a onclick = "this.parentnode.click();" href = "#" style = "border:solid 1px blue;"> [link in label] </a> </label>
最後に、ParentNodeを使用して実装されます。
<a href = "javascript:void(0)" onclick = "definefield(this); return false"> clicktodefine </a>