繁体   English   中英

无法在Javascript HTML中单击按钮时调用函数

[英]Not able to call function on button click in Javascript html

我有下面的代码,我需要在单击按钮时调用函数。 但这并不是调用这些函数。 下面的代码有什么问题。

<!DOCTYPE html>
<html>
<body>

<input type="button" value="Copy Parent Text" id="CopyParent"  onclick="getRate("SEK", "USD")">
<input type="button" value="Copy Child Text" id="CopyChild"  onclick="getRate("USD", "SEK")">


<script type="text/javascript">

  function getRate(from, to) {
  alert("1");
    var script = document.createElement('script');
    script.setAttribute('src', "http://query.yahooapis.com/v1/public/yql?q=select%20rate%2Cname%20from%20csv%20where%20url%3D'http%3A%2F%2Fdownload.finance.yahoo.com%2Fd%2Fquotes%3Fs%3D"+from+to+"%253DX%26f%3Dl1n'%20and%20columns%3D'rate%2Cname'&format=json&callback=parseExchangeRate");
    document.body.appendChild(script);
  }

  function parseExchangeRate(data) {
    var name = data.query.results.row.name;
    var rate = parseFloat(data.query.results.row.rate, 10);
    alert("Exchange rate " + name + " is " + rate);
  }

</script>

</body>
</html>

请帮我。

您有语法错误,因为您将双引号括在双引号中。 如果单击按钮时在浏览器的控制台中查看,则会显示错误。

您可以像这样更改HTML来解决它:

<input type="button" value="Copy Parent Text" id="CopyParent"  onclick="getRate('SEK', 'USD')">
<input type="button" value="Copy Child Text" id="CopyChild"  onclick="getRate('USD', 'SEK')">

你必须加上双quot内双quote "getRate("USD", "SEK")" 只需如下更改您的html:

<input type="button" value="Copy Parent Text" id="CopyParent"  onclick='getRate("SEK", "USD")'>
<input type="button" value="Copy Child Text" id="CopyChild"  onclick='getRate("USD", "SEK")'>

简单的错误“ getRate('SEK','USD')”和“ getRate('USD','SEK')”

 <!DOCTYPE html> <html> <body> <input type="button" value="Copy Parent Text" id="CopyParent" onclick="getRate('SEK', 'USD')"> <input type="button" value="Copy Child Text" id="CopyChild" onclick="getRate('USD', 'SEK')"> <script type="text/javascript"> function getRate(from, to) { alert("1"); var script = document.createElement('script'); script.setAttribute('src', "http://query.yahooapis.com/v1/public/yql?q=select%20rate%2Cname%20from%20csv%20where%20url%3D'http%3A%2F%2Fdownload.finance.yahoo.com%2Fd%2Fquotes%3Fs%3D"+from+to+"%253DX%26f%3Dl1n'%20and%20columns%3D'rate%2Cname'&format=json&callback=parseExchangeRate"); document.body.appendChild(script); } function parseExchangeRate(data) { var name = data.query.results.row.name; var rate = parseFloat(data.query.results.row.rate, 10); alert("Exchange rate " + name + " is " + rate); } </script> </body> </html> 

查看有关使用onclick函数的文档。 如果您使用的是onclick,则必须为参数指定单引号

<input type="button" value="Copy Parent Text" id="CopyParent"  onclick="getRate('SEK', 'USD')">
<input type="button" value="Copy Child Text" id="CopyChild"  onclick="getRate('USD', 'SEK')">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM