创建网页时的事件处理

时间:2016-01-06 17:51:00

标签: jquery

我打算创建一个有按钮的网页。如果单击该按钮,则提示用户输入一些文本。除非用户输入空字符串或字符x,或单击“取消”按钮,否则输入的文本将附加为带有黄色背景的<p>标记到文档正文中。

以下是我的代码不起作用,你能帮助我吗?

<!DOCTYPE HTML>
<html>

<head>
  <meta charset="UTF-8">
  <title>Simple Demo</title>
  <style>
    p {
      background-color: yellow;
    }
  </style>
  <script src="http://code.jquery.com/jquery-latest.min.js"></script>
  <script>
    $(document).ready(function() {

      $("#myButton").click(function() {
          var message = prompt("Enter some text...");
          if ($(this).data("clicked") == true;) {
            document.write(message);
          } else {
            message === null || message === x || $("#myCancelButton").click(function) {
              $("body").append("<p>" + message "</p>");
            });
        }
      });
    });
  </script>
</head>

<body>
  <button id="myButton">Click Me!</button>
  <button id="myCancelButton">Cancel!</button>
</body>

</html>

1 个答案:

答案 0 :(得分:0)

你已经在这里开了一座小山!

  1. 内置提示已经有一个取消按钮 - 当用户点击它时,prompt调用会返回null
  2. 如果您在jquery处理程序中单击按钮,则表示您已知道用户已单击该按钮。
  3. &#13;
    &#13;
    $("#myButton").click(function() {
      var result = prompt("Enter some text");
      if(result != null && result != "x"){
         $('body').append("<p>" + result + "</p>"); 
      }
    });
    &#13;
    p{
     background-color:yellow;  
    }
    &#13;
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <button id="myButton">Click me!</button>
    &#13;
    &#13;
    &#13;