1

我是 JavaScript 的新手,我有一个带有按钮的 HTML 文件,当单击按钮时我需要调用以下 JS ......知道怎么做<input type="submit" value="Get Push Token" />吗?

请提供代码示例,非常感谢!

PushToken.getToken(     
                     ["getToken"] ,           
                     function(token) {
                              global.token = token; 
                     },
                     function(error) {
                              console.log("Error : \r\n"+error);      
                     }
          );

 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <meta name = "format-detection" content = "telephone=no"/>
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width;" />
        <link rel="stylesheet" type="text/css" href="css/index.css" />
        <title>Hello Cordova</title>
    </head>
    <body>
        <div class="app">
            <h1>Apache Cordova™&lt;/h1>
            <div id="deviceready">
                <p class="status pending blink">Connecting to Device</p>
                <p class="status complete blink hide">Device is Ready</p>
                <p>Click here to get the Token<input type="submit" value="Get Push Token" />
            </div>
        </div>
        <script type="text/javascript" src="cordova-2.0.0.js"></script>
        <script type="text/javascript" src="js/index.js"></script>
        <script type="text/javascript" src="js/PushToken.js"></script>
        <script type="text/javascript">
            app.initialize();
        </script>
    </body>
</html>
4

3 回答 3

3

不使用 jQuery

在一个简单的组件或应用程序中,您不希望需要整个 jQuery 库,所以最简单的方法是这样的:

HTML:

<input type="submit" value="Get Push Token" id="getPushToken" />

JavaScript:

document.getElementById('getPushToken').onclick=function(){
      PushToken.getToken(     
                 ["getToken"] ,           
                 function(token) {
                          global.token = token; 
                 },
                 function(error) {
                          console.log("Error : \r\n"+error);      
                 }
      );
}

使用 jQuery

如果您正在构建一个复杂的应用程序,那么您很有可能需要 jQuery 来做其他事情,在这种情况下,您不妨这样做:

HTML:

<input type="submit" value="Get Push Token" id="getPushToken" />

JavaScript:

$('#getPushToken').click(function(){
      PushToken.getToken(     
                 ["getToken"] ,           
                 function(token) {
                          global.token = token; 
                 },
                 function(error) {
                          console.log("Error : \r\n"+error);      
                 }
      );
});

了解正在发生的事情

无论哪种情况,关键是您将要执行的代码包装在一个函数中,并将其设置为该按钮的单击事件的处理程序。然后该按钮将导致调用该函数。

使用正确的 HTML

如果按钮不在表单中,您可能应该使用:

<button id="getPushToken">Get Push Token</button>

相反,对于 html,JavaScript 将完全相同。

于 2012-08-24T13:51:56.827 回答
1

HTML:

<input type="submit" value="Get Push Token" id="getPushToken" />

JavaScript:

document.getElementById('getPushToken').onclick=function(){
      PushToken.getToken(     
                 ["getToken"] ,           
                 function(token) {
                          global.token = token; 
                 },
                 function(error) {
                          console.log("Error : \r\n"+error);      
                 }
      );
}

无论如何,你有一个输入type="submit",但你没有任何形式,这有点胡说八道。

如果您只想要一个按钮,请使用type="button". 如果要提交表单,请创建一个包含该输入的表单,id例如myform. 然后,

document.getElementById('myform').onsubmit=function(){
      PushToken.getToken(     
                 ["getToken"] ,           
                 function(token) {
                          global.token = token; 
                 },
                 function(error) {
                          console.log("Error : \r\n"+error);      
                 }
      );
}
...
于 2012-08-24T13:48:07.240 回答
0

将代码放入事件处理函数中,然后onclick在按钮中调用该函数。

HTML:

/* you probably want button, not submit, and it should have an ID */
<input type="button" id="someID" value="Get Push Token" />

JS:

document.getElementById('someID').onclick = function () {
    // whatever you want to do here
};

请注意,还有其他方法可以绑定事件处理程序,但这被认为是最佳实践(保持 javascript 和 HTML 分开)

相关问题:JavaScript 事件处理最佳实践?

于 2012-08-24T13:47:51.093 回答