我有一些元素与一些数据。我需要为它创造变化的领域。所以我使用textarea来改变这个元素中的文字。一切工作正常,但是当我想添加condtion与文本langht东西是不正确的......这是我的代码和一些小提琴(http://jsfiddle.net/qzzKA/)。 THX的帮助......如何用jQuery替换文本元素中的文本
<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>');
}
});
您是否尝试过使用'.VAL()''代替的.text()'? –
与您的问题没有关系,但请注意,使用跨度作为链接是可访问性失败,因为它们不适用于不使用鼠标或不能使用鼠标或其他指针设备的用户。 – nnnnnn
thx我会改变它,但现在我需要解决这个问题... – Lukas