来自js文件的HTML按钮调用函数

时间:2016-11-30 15:00:44

标签: javascript html

我有一个按钮调用功能' a':

<button id = "btn" type="button"
          onclick="a();">someText</button>

此功能显示和隐藏元素:

 <p id="text" style= "display:none;">
Text.</p>

功能:

    function a() {

  var b= 0;      
  if (b === 0) 
  {
    document.getElementById('text').style.display='block';
    document.getElementById('btn').innerHTML="changed text";
    b = 1;
  }
  else
  {
    document.getElementById('text').style.display='none';
    document.getElementById('btn').innerHTML="someText";
    b = 0;
  } 
}

直到我将此功能移到单独的文件&#39; x.js&#39;中才有效。 我将此文件附加到index.html

 <script type="text/javascript" src="x.js"></script>

它有什么问题?我该怎么做才能让它发挥作用?

1 个答案:

答案 0 :(得分:0)

var b= 0;应该在函数之前定义并且是全局的

&#13;
&#13;
var b = 0;

function a() {
  if (b === 0) {
    document.getElementById('text').style.display = 'block';
    document.getElementById('btn').innerHTML = "changed text";
    b = 1;
  } else {
    document.getElementById('text').style.display = 'none';
    document.getElementById('btn').innerHTML = "someText";
    b = 0;
  }
}
&#13;
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>The Steve Barrett Collection</title>
</head>
<body>
  <button id="btn" type="button" onclick="a()">someText</button>
  <p id="text" style="display:none;">
    Text.</p>
</body>
</html>
&#13;
&#13;
&#13;