Я хочу преобразовать свой элемент HTML DOM в строку, чтобы я мог использовать его для генерации PDF.
Я попробовал следующий код в JavaScript, но он возвращает элемент HTML.
function getHtmlString() {
var element=document.getElementById("pdfdiv");
var str = element.innerHTML;
console.log(str);
return str;
};
<div id="pdfdiv">
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<!--<h3 style="margin-left:150px;"><strong> Patient Details</strong></h3>-->
<table width="100%" style="padding:0px 105px">
<thead>
<tr>
<th>
</th>
</tr>
<tr>
<th>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<table style="float:left" width="75%">
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>
"Hi" @order.Id
</td>
<td>
<h2><strong> Patient Order</strong></h2>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</body>
</html>
</div>
Возвращает следующее:
<!--!-->
<html><!--!-->
<!--!-->
<meta charset="utf-8">
<title></title>
<body><!--!-->
<table width="100%" style="padding:0px 105px"><!--!-->
<!--!--><thead>
<tr>
<th>
</th>
</tr>
<tr>
<th>
</th>
</tr>
</thead>
<tbody><!--!-->
<tr><!--!-->
<td><!--!-->
<table style="float:left" width="75%"><!--!-->
<!--!--><thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody><!--!-->
<tr><!--!-->
<td><!--!-->
"Hi" 4<!--!-->
</td><!--!-->
<!--!--><td>
<h2><strong> Patient Order</strong></h2>
</td>
</tr><!--!-->
</tbody><!--!-->
</table><!--!-->
</td><!--!-->
</tr><!--!-->
</tbody><!--!-->
</table><!--!-->
</body><!--!-->
Из-за этого я не могу преобразовать в PDF с помощью передавая эту строку PdfDocument document = htmlConverter.Convert(htmlstring);
. Выдает исключение Error: Syncfusion.Pdf.PdfException: Html conversion failed
. Как я могу преобразовать элемент HTML DOM в строку?