हाय मैं जेएसपीडीएफ और एचटीएमएल के लिए नया हूँ। मैं वास्तव में किसी भी सलाह की सराहना करूंगा। नीचे मेरा कोड ठीक काम कर रहा है; हालांकि, यह केवल एक बार काम कर रहा है जब मेरा बटन क्लिक किया जाता है। और अगर मैं इसे दूसरी बार क्लिक करता हूं, तो यह काम नहीं करेगा। मुझे इसे फिर से काम करने के लिए पृष्ठ को रीफ्रेश करने की आवश्यकता है। फ़ंक्शन को केवल एक बार कॉल किया जाता है लेकिन हर बार बटन क्लिक करने पर नहीं। मैं चाहता हूं कि जब भी मैं बटन क्लिक करूं तो यह काम करे। मैं कई बार पीडीएफ डाउनलोड कर सकता हूं।

<!DOCTYPE html>
<html lang="en-US">
    <head>
        <title>PDF</title>
        <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/0.9.0rc1/jspdf.min.js"></script>
    </head>
    <body>
        <!-- Content Area -->
        <div id="print">
            <p></p>
            <p id="veewom"></p>
            <p></p>
            <p id="veewom1"></p>
            <p></p>
            <p id="veewom2"></p>
            <p></p>
            <p id="veewom3"></p>
            <p></p>
            <p id="veewom4"></p>
        </div>
        <div id="p-btn"></div>
        <button onclick="function" type="button"  id="download">Download</button>
        <!-- Script -->
        <script>

    var doc = new jsPDF();

    var specialElementHandlers = {
        '#p-btn': function (element, renderer) {
            return true;
        }
    };

    $('#download').click(function () {
      var chars = $('#try1').val();
      var chars1 = $('#name').val();

      var source = $('#print').html();
      doc.fromHTML(source, 15, 15, {
        'width': 170,
        'elementHandlers': specialElementHandlers
      });

    doc.setDrawColor(0);
    doc.setFillColor(128, 128, 128);
    doc.setFontSize(11);
    doc.setFontType('bold');
    doc.text('Name                              :', 12, 30);
    doc.setFontSize(11);
    doc.setFontType('normal');
    doc.text(chars1, 80, 30);
    doc.save('test.pdf');
    });

    </script>
    </body>
</html> 
0
Aika 7 अगस्त 2018, 11:23
नमस्ते क्या आपने अपने बटन से onclick="function" विशेषता को हटाने का प्रयास किया है?
 – 
t3__rry
7 अगस्त 2018, 11:24
और jQuery लाइब्रेरी भी जोड़ें।
 – 
Jai
7 अगस्त 2018, 11:25

2 जवाब

विशेषता हटाएं onclick="function" आप jQuery के साथ क्लिक श्रोता सेट कर रहे हैं

इनिशियलाइज़ेशन डॉक को फंक्शन क्लिक के अंदर ले जाएँ

उदाहरणों के सुरक्षित उपयोग और विरोध से बचने के लिए let कीवर्ड का उपयोग करें

<button type="button" id="download">Download</button>
<!-- Script -->
<script>

$('#download').click(
  function downloadClickfunction () {
    // make instance everytime and use let
    let doc = new jsPDF();

    /* etc ...*/
    let source = $('#print').html();
    doc.fromHTML(source, 15, 15, {
      'width': 170,
      'elementHandlers': specialElementHandlers
    });

    /* etc ...*/

    doc.save('test.pdf');
  } 
);


</script>
0
Clystian 7 अगस्त 2018, 11:43

विशेषता हटाएं onclick="function" उस बटन से एक आईडी download के साथ, jQuery लाइब्रेरी जोड़ें <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> ठीक उसके बाद जहां आपने jspdf जोड़ा और आपको ठीक होना चाहिए

0
7 अगस्त 2018, 11:57