web-dev-qa-db-fra.com

Variable JavaScript onclick en ligne

J'ai un JavaScript au-dessus de ce html, est-il possible de le passer dans EditBanner (variable JS ici) dans le code ci-dessous?

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

Il y a toute une pratique qui dit que c'est une mauvaise idée d'avoir des fonctions/styles en ligne. Étant donné que vous disposez déjà d'un ID pour votre bouton, pensez à

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

Oui, les variables JavaScript existeront dans la portée de leur création.

var bannerID = 55;

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


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

Si vous utilisez des gestionnaires d'événements et jQuery, c'est simple aussi

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