2015-04-05 39 views
0

我正尝试使用document.write()方法在文档上编写一些文本。事情是我想要这个文本写在那里当用户点击按钮,并保持在那里后,用户完成点击按钮。我现在遇到的问题是文本出现一段时间,然后在函数完成执行后消失,这是我不想要的,也不知道如何解决它。通过JQuery和JavaScript函数提交按钮所做的更改不会持续

<!DOCTYPE html> 
    <html lang="en"> 
     <head> 
     <title>Learning JQuery</title> 
     <meta charset="utf-8" /> 
     <script src="jquery.js" type="text/javascript"></script> 
     <script type="script.js"> 
      $(document).ready(function(){ 
       $("input").click(function(){ 
       for(var i = 0; i < 10; i++){ 
        for(var j = 0; j < i; j++){ 
        document.write("*"); 
        } 
        document.write("<br/>"); 
       } 
       //alert("click to continue"); 
       }); 
      }); 
     </script> 
     </head> 
     <body> 
     <p>Body section of the page</p> 
     <form> 
      <input type="submit" value="clickMe" /> 
     </form> 
     </body> 
    </html> 
+0

你不能像这样使用'document.write()'。在页面的HTML初始化完成后,'document.write()'会重新启动页面,并将已经存在的所有内容都刷新。在极少数情况下,这就是你想要的,但不是我怀疑的。 – 2015-04-05 21:49:59

+0

这是什么你想要的? http://jsfiddle.net/BloodyKnuckles/a62uc4jw/ – bloodyKnuckles 2015-04-05 21:58:03

回答

0

使用类似下面,

对身体放一个div。

<div id="my-div"></div> 

然后在你的代码,你可以做到这里面点击

e.preventDefault(); 
    for(var i = 0; i < 10; i++){ 
    for(var j = 0; j < i; j++){ 
     $('#my-div').append("*"); 
    } 
    $('#my-div').append("<br/>"); 
    } 
+0

它仍然在做同样的事情,对瞬间进行更改然后消失。当我尝试使用javascript更改bgColor时,我遇到了同样的问题,一旦函数执行完毕,背景会改变一段时间,然后再执行它。 – blackMarket 2015-04-05 22:08:58

+0

add e.preventDefault(); 之前像M.Doye建议的循环。 – Sohel 2015-04-05 22:13:25

+0

@blackMarket,检查我的更新答案。 (y) – Sohel 2015-04-05 22:17:01

1

文本“出现了一会儿,然后消失”因为你的页面刷新由于type="submit"在你提交按钮。如果您试图防止刷新页面,则可以使用preventDefault()

 $(document).ready(function(){ 
      $("input").click(function(e){ 
      e.preventDefault(); 
      for(var i = 0; i < 10; i++){ 
       for(var j = 0; j < i; j++){ 
       document.write("*"); 
       } 
       document.write("<br/>"); 
      } 
      //alert("click to continue"); 
      }); 
     }); 

Here is an Example


或者,你可以比较使用正常的按钮,如果你实际上并没有提交表单数据:

<button id="button">Click Me</button> 

再火JS的当按钮点击:$("#button").click(function(e){ ... });

+0

wokay谢谢你的工作.. – blackMarket 2015-04-05 22:38:41

相关问题