我在网上搜索过但没有发现任何相关内容。
我正在尝试通过隐藏的输入表单将PDF提交到PDF生成器。但是当我提交时,所有
都被删除了。
以下是我正在使用的代码:
for (var i = 0; i < receipts.length; i++) {
params.receiptHtmls[i] = receipts[i].receiptHtml.replace("width=device-width, initial-scale=1", "text/html; charset=utf-8");
params.receiptHtmls[i] = receipts[i].receiptHtml.replace(/"/g, '"');
}
var disp = request.getResponseHeader('Content-Disposition');
if (disp && disp.search('attachment') !== -1) {
var form = $('<form method="POST" accept-charset="UTF-8" action="' + url + '">');
$.each(params.receiptHtmls, function(k, v) {
form.append($('<input type="hidden"name="receiptHtmls[]" value="' + v + '">'));
});
$.each(params.names, function(k, v) {
form.append($('<input type="hidden" name="names[]" value="' + v + '">'));
});
$('body').append(form);
form.submit();
}
当我单步执行代码时,显然在表单提交之前正在删除&nsps;
。
知道为什么会这样,以及我可以做些什么来阻止它?
答案 0 :(得分:0)
如果有人遇到这种情况。
最终解决方案是我们需要使用document.createElement("input");
来创建输入,然后使用setAttribute('type', 'hidden')
等。
form.append($('<input type="hidden"name="receiptHtmls[]" value="' + v + '">'));
每次都会引发这个问题。