...at对我来说是最少的。这段代码过去很好用。我很肯定什么都没有改变,但现在它突然表现得很奇怪。基本上,我试图创建内联编辑功能。当用户单击该链接时,它将动态生成一个textbox以及一个确认和取消链接。我有问题的取消链接,没有删除所有的细胞。
HTML:
...
<td class="bid">
<a href="javascript:" class="102093" title="Click to modify bid">$0.45</a>
</td>
...绑定jQuery (以$(function())表示):
$('.bid a').live('click', renderBidChange);
....
$('.report_table .cancel').live('click', cancelUpdate); renderBidChange (此函数创建动态元素):
function renderBidChange(){
var cpc = $(this);
var value = cpc.text().replace('$', '');
var cell = cpc.parent('.bid');
cpc.hide();
var input = document.createElement('input');
$(input).attr({type:'text',class:'dynamic cpc-input'}).val(value);
cell.append(input);
var accept = document.createElement('a');
$(accept).addClass('accept').attr({'href':'javascript:',
'title':'Accept Changes'}).text('Accept Changes');
cell.append(accept);
var cancel = document.createElement('a');
$(cancel).addClass('cancel').attr({'href':'javascript:',
'title':'Cancel Changes'}).text('Cancel Changes');
cell.append(cancel);
$(input).focus();
input.select();
}cancelUpdate这个函数只是删除了单元格中所有可见的东西(本例中所有的动态垃圾),并显示了过去的情况。
function cancelUpdate(){
var cell = $(this).parent();
cell.find(':visible').remove();
cell.find(':hidden').show();
}但是,由于某种原因,单击cancel链接后仍然保留它!除此外,其他一切都被移除。W T F
感谢您所能提供的洞察力!我肯定这只是一些愚蠢的小细节我太爱喝咖啡了.
发布这篇文章后,立即更新了,我意识到这可能是的一个问题,但是在反复检查我的代码之后,它就不是了。
发布于 2010-03-30 00:45:26
你需要稍微调整一下:
$('.bid a:not(.cancel)').live('click', renderBidChange);由于您已经移动到.live(),第一个函数也在运行,单击cancel :)
发布于 2010-03-30 00:45:34
如果你改变了会发生什么:
$('.report_table .cancel').live('click', cancelUpdate); 至
$('.bid .cancel').live('click', cancelUpdate); 我不指望有解决办法,但我只是想
.accept的“实时”功能是什么?它起作用了吗(大概是这样)
https://stackoverflow.com/questions/2542159
复制相似问题