是否可以通过用户进行的所有修改来获取页面的html(见下文)?
例如,如果已将文本输入到textarea中,或者已选择了复选框,则该文本也应反映在html中。我想要这样做的原因是拍摄用户页面的“屏幕截图”。
以下答案是jQuery('html')
的变体,不反映用户所做的更改。
答案 0 :(得分:3)
你可以使用jQuery:
var html = $('html')
答案 1 :(得分:3)
如果您想要截图,则应考虑使用html2canvas等工具。只需拉动HTML就不会得到输入字段。
Another SO thread along these lines
其他答案会为您提供HTML,特别是没有输入值
$('html').html();
答案 2 :(得分:0)
如果您有一个名为“field”的字段:
var field = document.getElementById("field");
fieldvalue= field.value;
如果您有一个复选框,则操作实际上是相同的。希望这有用。
答案 3 :(得分:0)
适应其他答案。在获取HTML之前,您可以遍历所有输入元素并手动设置value
属性,然后这将反映在HTML中:
$('a').click(function(e){
setValueProperties();
var html = getHtml();
alert(html);
});
function setValueProperties(){
$('input').each(function(){
$(this).attr("value", $(this).val());
});
}
function getHtml(){
return document.documentElement.outerHTML;
}
And here is an example that supports checkboxes
注意:您可能需要针对您的确切需求优化此功能,但希望它能帮助您实现所需。