Javascript 更改的值在PDF转换后不显示

Javascript 更改的值在PDF转换后不显示,javascript,php,html,pdf,wkhtmltopdf,Javascript,Php,Html,Pdf,Wkhtmltopdf,我创建了一个html页面,其中有一些值可以通过文本字段进行更改。这是如何工作的一个示例: Voornaam: <h3 class="title1">Test</h3> <input type="text" id="myTextField1"/> <input type="submit" id="byBtn" value="Change" onclick="change1()"/><br/> 这里应该改变的是:

我创建了一个html页面,其中有一些值可以通过文本字段进行更改。这是如何工作的一个示例:

Voornaam: <h3 class="title1">Test</h3>
      <input type="text" id="myTextField1"/>
      <input type="submit" id="byBtn" value="Change" onclick="change1()"/><br/>
这里应该改变的是:

<p class="title1">Test.</p><p class="title2">Achternaam</p>

这确实有效,但正如我所说。。不使用我更改的值。

您需要将更改发送到服务器。就像提交表格一样有效

一种方法是让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
现在可以

  • 阅读HTML文档
  • 将原始标题替换为
    $\u POST['title']
  • 将修改后的文档另存为临时文件
  • 运行转换

我看了一下“wkhtmltopdf”,它显然是一个命令行工具。这意味着它会处理硬盘上的HTML文档,当然不会受到浏览器中对DOM的JS更改的影响。但是,如果您已经考虑到这一点,那么您确实需要更明确地了解如何以及何时转换为PDF。我将编辑我的帖子以作进一步解释。同样,你没有在服务器上更改任何内容。JavaScript代码在客户端的浏览器中运行,这些更改只发生在您用来查看网页的计算机的RAM中。否则,任何人都可以随意永久更改随机网站,而不必首先攻击服务器。那么有什么方法可以做到这一点吗?或者这是不可能的……我必须看看这个,因为我不是很有经验。你有没有可能根据我的代码给出一个简单的例子?也许JSFIDLE会很受欢迎。下面是
的示例代码:非常感谢,我将尝试一下。我应该将wktohtml函数链接到send按钮吗?是的,但仅限于send按钮将表单值发送到
convert.php
,后者将运行该命令。需要明确的是:您仍然必须同时使用JS代码和PHP代码。在PHP示例的最后,我只是简单地回显生成的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;
}
<form id="changes" action="convert.php" method="post">
  <input type="hidden" name="title">
  <!-- more inputs here -->
  <input type="submit" value="converten naar pdf.">
</form>