2011-09-28 134 views
0

我有一个文本框和提交按钮的形式。一旦点击5秒,我将禁用提交按钮。如果在文本字段中没有输入任何内容,并且用户尝试提交,则该按钮将被禁用1秒,并且不会发布任何内容。jquery禁用提交按钮

我遇到的问题是,在Chrome和Firefox的朋友Mac上,当按钮被禁用时,按钮消失,并且灰色框被留下,直到5秒钟结束,但在我的Windows计算机上使用Chrome和Firefox的按钮只是淡出。这是为什么发生这种情况的原因吗?他说它工作正常,然后突然开始发生。

这里是我的HTML:

<form style="position:relative; top:-5px;" action="" method="post"> 
    <strong>Message:</strong> 
    <input type="text" id="message" name="message" class="message"> 
    <input type="submit" id="submit" value="Submit"/> 
</form> 

和Javascript:

<script type="text/javascript"> 

$(function() { 
    refresh_shoutbox(); 

    setInterval("refresh_shoutbox()", 15000); 

    var running = false; 

    $("#message").keypress(function(e) { 
     if(e.which == 13 && running === true) { 
      return false; 
     } 
    }); 

    $("#submit").click(function(event) { 
     if(this.disabled) { 
      event.preventDefault(); 
     } 

     if($("#message").val() != '') { 
      running = true; 

      $("#submit").attr("disabled","disabled"); 

      setTimeout(function() { 
       $("#submit").removeAttr("disabled") 
       running = false; 
      }, 5000); 
     } else { 
      $("#submit").attr("disabled", "disabled"); 
       setTimeout(function() { 
        $("#submit").removeAttr("disabled") 
        running = false; 
       }, 1000); 

      return false; 
     } 

// Ajax calls and the rest of the script 

回答

0

我认为有最新的WebKit的错误。我有被渲染确定,直到一个星期前呈现出怪异的灰色矩形现在以及

你应该使用HTML检查,检查按钮标签具有

disabled="disabled" 

为属性按钮