2013-12-12 121 views
1

我有一个文本区域和一个按钮。我有代码将焦点上的文本区域扩展并缩小模糊事件。当用户按下按钮时,它将内容提交给服务器。问题在于,当用户输入文本然后单击该按钮时,它会在文本区域发生模糊事件,然后再点击按钮。该框缩小,但按钮点击动作被掩盖。我已经经历了类似的主题不同的线程过去了,已经尝试了各种选项,但既不工作...模糊textarea和提交输入按钮

  1. 试图在模糊处理程序中添加此......但没有帮助...

    if ($(':focus').is('#submitbtn')) { return false; } 
    
  2. 尝试添加该模糊处理......但即使它在Chrome中工作也没有在IE浏览器...

    if (event.relatedTarget != null && event.relatedTarget.nodeName == "INPUT") { 
    
        // Now call click on the related Target which was the submit button 
    
        event.relatedTarget.click(); 
    
    } 
    
  3. 尝试以下方法,但没有帮助...

    $("#myTextArea").blur(function(evt) { 
    
        if (evt.target is not the button){ //pseudo code 
    
         //do something 
    
         return true; // I handled it 
    
        } 
    
        return false; // I didn't handle it 
    
    }) 
    

任何其他解决办法?

+1

ü可以使小提琴,所以我们有更好的想法..! – Neha

+0

这里你去... http://jsfiddle.net/mi10/csYkk/5/ 请注意,我发现2 hack并将它们添加到代码。一个适用于IE浏览器,另一个适用于Chrome和Firefox ...我相信虽然有更好的解决方案.... 请注意,在此演示中,由于黑客问题,此问题并未显示。如果你删除这些黑客,你会问题... – mi10

回答

1

好吧它的棘手..我不知道为什么,但它捕获按钮的重点,但不是点击..这里是代码,如果提交按钮有焦点提交形式..(希望它的帮助..因为我知道它不完整修复)

$("#btn_0").focus(function() { 
/*its capture the focus but not the click*/ 
    $("#f1").submit(); 
}); 

Working dmeo

+0

这确实有助于就像我做的其他2黑客。非常感谢您在这里的帮助。但与其他任何黑客一样,这个问题很少。例如很多时候,提交后没有清除文本区域。此外,如果我只是通过我的控件进行切换,它会在按钮获得焦点后立即提交。 :-(是的,这当然是非常棘手的...我的2黑客也有通过按钮标签的问题,提交评论...任何其他想法?其他人? – mi10

+0

我认为清理数据等你必须照顾它不正常从js提交它的种类,所以你必须在btn.focus - $(“#t0”)。html(“”)中做这样的事情;问题是我们不知道btn焦点来自点击或正常焦点。 。!!! – Neha