使用.replaceWith()
和.val()
我能够替换标题,但当试图访问输入的placeholder
.attr()
时,我无法替换它。以下是我的文件:
<p class="title">Title</p>
<p><input class="placeholder" type="text" placeholder="Placeholder" disabled /></p>
<p><input class="newText" type="text" /></p>
<p><input class="newPlaceholder" type="text" /></p>
<p><input type="button" class="button" title="button" /></p>
$("input.button").click(function(){
var newText = $("input.newText").val();
$("p.title").replaceWith(newText);
var newPlaceholder = $("input.newPlaceholder").val();
$("input.placeholder").attr("placeholder").replaceWith(newPlaceholder);
});
JSFiddle
. replacewith()不用于设置HTML元素的属性。你想使用.prop():
获取匹配元素集合中第一个元素的属性值,或者为每个匹配的元素设置一个或多个属性
要设置文本框的占位符属性,可以使用.prop()
:
var newPlaceholder = $("input.newPlaceholder").val();
$("input.placeholder").prop("placeholder", newPlaceholder);
我已经更新了您的JSFiddle以显示一个示例