我在这样的字符串中有一段 HTML:
var htmlString = '<input type="text" id="someID" name="someID">';
我如何使用 jQuery 设置它的值,以便 HTML 像这样结束:
'<input type="text" id="someID" name="someID" value="newValue">';
谢谢,斯科特
我在这样的字符串中有一段 HTML:
var htmlString = '<input type="text" id="someID" name="someID">';
我如何使用 jQuery 设置它的值,以便 HTML 像这样结束:
'<input type="text" id="someID" name="someID" value="newValue">';
谢谢,斯科特
$(htmlString).attr("value", "newValue");
但这将返回 jQuery 对象,而不是字符串。您可以将其添加到 DOM。
$(htmlString).attr("value", "newValue").appendTo("body"); // you can give any element instead of body
编辑 :
您可以使用@idor_brad 的方法。这是最好的方法或
var htmlString = '<input type="text" id="someID" name="someID">';
var $htmlString = $(htmlString);
$htmlString.attr("value1", "newValue1");
$htmlString.attr("value2", "newValue2");
$htmlString.attr("value3", "newValue3");
console.log($htmlString.get(0).outerHTML);
或者
var htmlString = '<input type="text" id="someID" name="someID">';
var $htmlString = $(htmlString);
$htmlString.attr("value1", "newValue1");
$htmlString.attr("value2", "newValue2");
$htmlString.attr("value3", "newValue3");
console.log($("<div>").append($htmlString).html());
您首先需要将您的元素添加到 DOM(即添加到您的网页)。例如:
$(".container").append(htmlString);
然后您可以将您的input
作为 jquery 对象访问并添加 value 属性,如下所示:
$("#someID").val("newValue");
你只是想操纵字符串,对吧?有很多方法可以给这只猫剥皮,但是
var newString = htmlString.replace('>', ' value="newValue">');
dom 准备好后,将输入附加到 body,然后使用 id = "someID" 获取输入并将其值设置为 newValue
$(document).ready(function(){
$("body").append(htmlString);
$("#someID").val("newValue");
});