每当我点击文本区域时页面都会刷新,不允许我填写任何文本

时间:2015-12-09 19:12:03

标签: jquery html

我正在尝试创建一个自动更新数据库中输入文本的页面。但是,每当我点击textarea时,页面似乎会自动刷新。如果我输入的速度足够快,一些文本将会通过并更新。不确定错误是什么,我也使用twitter bootstrap,如果它有启发性,将在需要时提供其余的代码。这似乎是我的代码的相关部分:

    <div class="container contentContainer" id="topContainer">

  <div class="row">

    <div class="col-md-6 col-md-offset-3" id="topRow">

      <textarea class="form-control mytext" name="thought" placeholder="Where can we help your business go?"></textarea>

    </div>

  </div>

</div>

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<!-- Latest compiled and minified JavaScript -->
<script src="js/bootstrap.min.js"></script>
<script type="text/javascript">
    $(".contentContainer").css("min-height",$(window).height());
    $("textarea").css("height",$(window).height()-0.64*$(window).height());

</script>

编辑:删除了键盘功能。

5 个答案:

答案 0 :(得分:2)

您应该使用模糊事件将数据发布到服务器,而不是键盘事件。

sudo chmod 777 file_name

答案 1 :(得分:1)

@bpr你是否意识到你在这里使用了一个keyup事件:

 $("textarea").keyup(function() {
      $.post("updatethought.php", {thought:$("textarea").val()});
    });

你说的是: 如果我点击任何键而不是发布!!

您需要以其他方式执行此操作,而选项将使用“模糊”。

答案 2 :(得分:1)

我使用获取,因为如果您需要它来获取建议元素列表,则比发布更快。

<script type="text/javascript">
        $('.contentContainer').css('min-height',$(window).height());
        $('textarea').css('height',$(window).height()-0.64*$(window).height());
        $('textarea[name="thought"]').unbind(); //to be sure that aren't other triggers
        $('textarea[name="thought"]').on('keyup',function(e) {
          e.preventDefault();
          $.get('updatethought.php', {thought:$('textarea').val()});
        });
</script>

答案 3 :(得分:1)

您应该使用模糊事件将数据更新到db; 在模板的任何输入字段模糊时,对每个输入字段进行数据验证,在验证成功时执行ajax调用以更新db中的数据。这样,在将数据输入表单时,页面就不会刷新。

$("textarea").blur(function() {
   updateDB();
});

$("input").blur(function() {
   updateDB();
});


function updateDB(){
   // do data validation
   // on data validation success do ajax

}

http://api.jquery.com/jquery.ajax/

http://www.w3schools.com/jquery/jquery_ajax_get_post.asp

答案 4 :(得分:0)

对不起大家,事实证明我未能在我的代码的早期部分关闭一个href,这导致它认为整个页面都是一个链接。尽管如此,所有的功能建议都非常有用且信息丰富!