$("#paragraphDuration").bind('keyup', function() {
var fullDuration = $("#fullDuration").val(),
paragraphDuration = $(this).val();
$(this).after(function() {
if ($(this).val() != '') {
$(this).after(fullDuration - paragraphDuration + " min");
} else {
$(this).after("");
}
});
});
在我多次改变("#paragraphDuration")之后,这就是我得到的:
这不是我想要的!
如何在更改("#paragraphDuration")值时使用新值重新显示以前的。?
谢谢
答案 0 :(得分:2)
您需要覆盖旧值。最好不要使用.after
来设置文本,只需在预定义的span元素上使用.text()
方法。
例如:
HTML 的
<input type="text" id="paragraphDuration"><span class="textContainer"></span>
JS
$("#paragraphDuration").bind('keyup', function() {
var fullDuration = $("#fullDuration").val(),
paragraphDuration = $(this).val();
$(this).next('.textContainer').text(
$(this).val() !== ''
? (fullDuration - paragraphDuration + " min")
: ""
);
});