web-dev-qa-db-ja.com

インラインonclick JavaScript変数

私はこのHTMLの上にJavaScriptを持っています

//EditBanner to be changed to pass a Js variable.
<input id="EditBanner" type="button" value="Edit Image" onclick="EditBanner();"/>
15
Pit Digger

インライン関数/スタイルを持つことは悪い考えだと言う全体的な慣行があります。既にボタンのIDを持っていることを考慮して、検討してください

[〜#〜] js [〜#〜]

var myvar=15;
function init(){
    document.getElementById('EditBanner').onclick=function(){EditBanner(myvar);};
}
window.onload=init;

[〜#〜] html [〜#〜]

<input id="EditBanner" type="button"  value="Edit Image" />
28
Khez
<script>var myVar = 15;</script>
<input id="EditBanner" type="button" value="Edit Image" onclick="EditBanner(myVar);"/>
5
Rocket Hazmat

はい、JavaScript変数は作成されたスコープ内に存在します。

var bannerID = 55;

<input id="EditBanner" type="button" 
  value="Edit Image" onclick="EditBanner(bannerID);"/>


function EditBanner(id) {
   //Do something with id
}

イベントハンドラとjQueryを使用する場合も簡単です

$("#EditBanner").click(function() {
   EditBanner(bannerID);
});
4
Bobby Borszich