我创建了一个html页面,其中包含一些可以通过文本字段更改的值。这是如何工作的一个例子:
Voornaam: <h3 class="title1">Test</h3>
<input type="text" id="myTextField1"/>
<input type="submit" id="byBtn" value="Change" onclick="change1()"/><br/>
与功能相关联:
function change1(){
var myNewTitle = document.getElementById('myTextField1').value;
if( myNewTitle.length==0 ){
alert('Write Some real Text please.');
return;
}
var titles = document.getElementsByClassName('title1');
Array.prototype.forEach.call(titles,title => {
title.innerHTML = myNewTitle;
});
}
它应该改变的是:
<p class="title1">Test.</p><p class="title2">Achternaam</p>
它确实改变了这个值,但是我使用wkhtmltopdf创建了一个html to PDF方法。转换后,返回第一个值。我的新值不在PDF版本中。
我可以提供一个将html转换为PDF的方法示例,但我觉得这是不必要的,因为它是一个使用wkhtmltopdf的简单命令。
有人可以向我解释如何制作它,以便我的新价值将被转换并在PDF中看到。
编辑: 关于转换如何运作的一些解释。
在我的html页面底部有:
<?php
$link_address = 'convert.php';
echo "<a href='".$link_address."'>converten naar pdf.</a>";
?>
哪个运行:
$command = '/usr/local/bin/wkhtmltopdf [my link here] '.$path;
if($status = 1){
shell_exec($command);
echo 'De offerte is omgezet naar pdf en opgeslagen in: '. $path;
}
这确实有效,但正如我所说的那样..而不是我改变的价值。
答案 0 :(得分:1)
您需要将更改发送到服务器。完全像提交表单一样。
这样做的一种方法是让你的JS代码也设置隐藏的输入字段:
<form id="changes" action="convert.php" method="post">
<input type="hidden" name="title">
<!-- more inputs here -->
<input type="submit" value="converten naar pdf.">
</form>
当用户提交该表单时,您的convert.php
现在可以
$_POST['title']