我試圖將整個頁面保存爲HTML文件,將所有已寫入的值都包含在輸入中。我試過這個:獲取輸入的頁面包含值的整個HTML
$("#content").html();
但它不會保存輸入值。
$("#content").get(0).outerHTML;
$("#content").prop('outerHTML');
雖然工作原理相同,但仍不能保存輸入值。我需要在頁面上保存所有內容的功能。
我試圖將整個頁面保存爲HTML文件,將所有已寫入的值都包含在輸入中。我試過這個:獲取輸入的頁面包含值的整個HTML
$("#content").html();
但它不會保存輸入值。
$("#content").get(0).outerHTML;
$("#content").prop('outerHTML');
雖然工作原理相同,但仍不能保存輸入值。我需要在頁面上保存所有內容的功能。
您需要首先設置每個輸入值:
$('#content input').each(function() {
$(this).attr('value', $(this).val());//set up all the input values
});
var html = $('#content').html(); //now from here you can get input values
很酷的答案!它工作正常。多謝,夥計! –
很高興幫助。 ☺ –
你可以嘗試:
$("html").html();
如果你也想捕捉HMTL標籤,你可以將它們串聯到HTML這樣的:
function getPageHTML() {
return "<html>" + $("html").html() + "</html>";
}
你必須保存在某個變量的輸入值像
var input=$("#input-id").val()
當輸入被用戶更改時,它的.value
正在更改。 .value
不在DOM中,它在JS中。因此,您需要做的是將.value
轉換爲value=
以便能夠在字符串中獲取它。下面是如何完成它:
$('input').each(function(index, input){input.setAttribute('value', input.value)});
現在試圖讓HTML;)
PS:你也可以在這裏修改選擇,不要讓所有的投入(如type="password"
)。
的輸入值是性質並不影響HTML。您需要手動獲取所有輸入的所有值,並使用您構建的HTML字符串更新它們。 –
@ rory'value'屬性是HTML的一部分,儘管... – Teemu
這是真的,但在更改值時它不會直接更新。看到這個例子:https://jsfiddle.net/LmxLygcf/。無論您在輸入中設置了什麼,控制檯中顯示的值始終爲「foo」。 –