JAVA脚本打印输入旧值甚至在DOM中更改

时间:2018-02-08 05:52:10

标签: javascript jquery html

HTML表单有一个带有默认值的input元素,而使用java-script打印表单时,即使在DOM中更改了它也会打印默认值

JAVASCRIPT

$(document).on('click','.print',function(){
  var content = $('#printable_div').html();
  document.body.innerHTML =  content;
  window.print();
  document.body.innerHTML = content;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
  
<div id='printable_div'>
  <div class='row'>
    <div class='col-md-2'><span>OPT value</span>
      <input type='text' class='form-control' value='50' />
    </div>
  </div>
</div>
<input type='button' class='btn btn-primary print' value='Print'>

此处输入的默认值为50,我将此值更改为0并尝试打印,但是使用默认值50打印

2 个答案:

答案 0 :(得分:1)

对您有所帮助,我已添加

var v=$(".in_put").val();$(".in_put").attr("value",v);

      $(document).on('click','.print',function(){
              var v=$(".in_put").val()
              $(".in_put").attr("value",v);
              var content = $('#printable_div').html();
              document.body.innerHTML =  content;
              window.print();
              document.body.innerHTML = content;
          });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='printable_div' >
              <div class='row'>
                    <div class='col-md-2'><span>OPT value</span>
                        <input type='text' class='form-control in_put' value="50"  />
                    </div>
               </div>
    </div>
       <input type='button' class='btn btn-primary print' value='Print'>

答案 1 :(得分:1)

你可以这样试试。

$(document).on('click','.print',function(){
       $('#input-text').val(0);
       window.print();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id='printable_div'>
  <div class='row'>
    <div class='col-md-2'><span>OPT value</span>
        <input type='text' id="input-text" class='form-control' value='50' />
    </div>
   </div>
</div>
<input type='button' class='btn btn-primary print' value='Print'>