我有一些元素和一些数据。我需要为它创建不断变化的字段。所以我使用 textarea 来更改这个元素中的文本。一切正常,但是当我想用文本 langht 添加条件时,有些东西不能正常工作......这是我的代码和一些小提琴(http://jsfiddle.net/qzzKA/)。谢谢帮助...
<div class="textchange_box">
<span class="desc">data<br>data
</span>
<textarea name="desc" class="textfield"></textarea>
<span class="change">change</span>
<span class="save">save</span>
</div>
和jQuery:
$(".change").live('click', function () {
$(this).prev('.textfield').css('display','block');
$(this).prevAll('.desc').css('display','none');
$(this).next('.save').css('display','block');
$(this).css('display','none');
});
$(".save").live('click', function () {
var default_value = $(this).prev('.desc').text().replace(/\r\n|\r|\n/g,"<br/>");
var actual_value = $(this).prev('.textfield').text().replace(/\r\n|\r|\n/g,"<br />");
$(this).prevAll('.textfield').css('display','none');
$(this).prev('.change').css('display','block');
$(this).css('display','none');
if (actual_value.length < 0) {
$(this).prev('.desc').replaceWith('<span class="desc">' + default_value +'</span>');
}
else if (actual_value.length > 0) {
$(this).prev('.desc').replaceWith('<span class="desc">' + actual_value +'</span>');
}
});