2012-02-06 28 views
0

我有一個字段,我在輸入文本後做一個nl2br()。我已經讓用戶可以編輯該字段。但是,我不希望用戶在點擊修改時看到<br>jQuery.editable:需要去除編輯中的HTML中斷

這是我的函數:

$(this).editable({ 
    type: 'textarea', 
    submit: 'Save', 
    cancel: 'Cancel', 
    editClass: 'editable', 
    onEdit: function(content) { 
     $(this).html($(this).text()); 
    }, 
    ... 
}); 

$(this).html($(this).text())不起作用。在onEdit觸發時,標籤內的文本消失了。有任何想法嗎?如果需要,我可以粘貼更多代碼,但我認爲這不是必需的。

如果我做一個$(this).val('whatever');而不是替換。

回答

0

Got it! jQuery.editable在父標籤內添加一個textarea,並刪除以前存在的文本。

這工作:

text = $(this).text(); 
$(this).editable({ 
    type: 'textarea', 
    submit: 'Save', 
    cancel: 'Cancel', 
    editClass: 'editable', 
    onEdit: function(content) { 
     $(this).find('textarea.editable').val(text); 
    }, 
    ... 
});