2011-05-10 94 views
2

我有一个表,你输入你的时间。 Mouseover似乎没有做任何事情。点击,dblclick和重点。Jeditable - 错误与的onblur:提交并单击文本框

我不能只        ENTER      的提交,这是为什么的onblur:提交。 如果我使用任何点击或焦点,焦点之一的“文本”,然后又“文字”右后(点击其他地方之前),第二个“文本”打开 - >然后关闭将无法修改。 请和谢谢。 使用Jeditable 1.4.3当我注释掉onblur时:submit,我没有收到文本框错误。如果可能,我想使用鼠标悬停,甚至是鼠标提交。

代码可以在这里找到...

http://pastebin.com/7FC7pD1x

回答

0

编辑:年底

我想我明白你在,因为我具有得到什么可能的解决方法同样的问题(并且还没有看到任何解决方案)。

如果我理解正确的,问题是这样的:

如果你有其中每个单元绑定了的onblur到jedtiable表:“提交”你所期望的,当你点击一个细胞,进行编辑然后单击第一个单元格将提交的另一个单元格,并且可以继续编辑第二个单元格。但是,似乎发生的情况是,您单击第一个单元格,进行编辑,单击第二个单元格(模糊第一个单元格并导致在第一个单元格上提交),开始编辑第二个单元格,然后一旦第一个单元格提交第二个单元格接收模糊事件并提交并关闭。

要发生什么,是用于第一小区的提交和关闭,但留下第二个单元格打开和编辑。我不确定为什么当第一个单元格提交时会出现模糊事件。

编辑
我发现了一个可能的解决方案虽然需要jeditable的黑客攻击。

如果添加的setTimeout在jeditable的代码块中把重点放在输入框似乎解决这个问题。

找到这行中jeditable:

$(":input:visible:enabled:first", form).focus(); 

并将其更改为:

setTimeout(function() { 
    $(":input:visible:enabled:first", form).focus(); 
}, 500); 

这似乎做,但我希望有一个更好的办法。