将attr值占位符替换为文本输入中的用户输入



使用.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以显示一个示例

相关内容

  • 没有找到相关文章

最新更新