我在页面中使用WYSIWYG编辑器。我在回调函数中收集HTML。我想现在用jQuery更改内容。为此我做find()
来选择我要替换的文本。然后我想替换它,但我被卡住了!
$('.save').click(function() {
var html = $('#edit').editor('get_html');
console.log(html)
var ma_societe_OLD = $(html).find('.ma_societe').attr('data');
var ma_societe = $(html).find('.ma_societe').text();
if (ma_societe === ma_societe_OLD) {
$(html).find('.ma_societe').text('dfdsfsdfds');
}
console.log(html);
});
如您所见,我想用我自己的文本替换span
的内容。但它没有用。
答案 0 :(得分:2)
问题是因为您正在修改jQuery对象,但您从未将这些更改存储在任何位置。您可以创建一个包含原始jQuery对象的新jQuery对象,保持html
不变,也可以直接返回html
字符串。
相反,在变量中创建$(html)
,对其进行更改,然后根据需要使用它。像这样:
$('.save').click(function() {
var html = $('#edit').editor('get_html');
var $html = $(html);
var $maSociete = $html.find('.ma_societe')
if ($maSociete.text() === $maSociete.attr('data')) {
$maSociete.text('dfdsfsdfds');
}
var result = $html[0].outerHTML
console.log(result);
});