phonegap-print-plugin
phonegap-print-plugin copied to clipboard
Uncaught TypeError: Cannot read property 'PrintPlugin' of undefined" cordova print plugin
setTimeout(function(){ var type = "text/html"; var title = "test.html"; var fileContent = "Phonegap Print Plugin"; window.plugins.PrintPlugin.print(fileContent,function(){console.log('success')},function(){console.log('fail')},"",type,title); }, 2000);
you sure run it after device ready and can you tell me which platform android or ios you use and witch version of them
var html = document.getElementById('printssss').innerHTML; var result=html.replace(/"/g, ''');
var type = "text/html";
var title = "print.html";
window.plugins.PrintPlugin.print(result, function()
{
cordova.plugin.pDialog.dismiss();
}, function() {
console.log('fail')
}, "", type, title);
some times working fine and some times am getting error like.... "Uncaught TypeError: Cannot read property 'PrintPlugin' of undefined"
4.0 and above versions of android devices
var html = document.getElementById('printssss').innerHTML;
var result=html.replace(/"/g, '\'');
setTimeout(function()
{
var type = "text/html";
var title = "Print.html";
var fileContent=result+"<style>.dtls_order .dtls_order_table .table { margin: 0 0 20px 0; padding: 0px; border-bottom: 1px solid #eeeeee; color: #000000;width: 100%;margin: 0 0 20px 0;padding: 0px;font-size:13px; cellpadding:0; cellspacing:0; }.dtls_order .dtls_order_table .table thead { background: #eee; }.printpage_body{ background: #fff; color: #000 !important; position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 9; overflow-y: scroll; } .printpage_body .contentWrap{ padding:20px 10px; } .printpage{ width:100%; height:auto; float:left; } .printHeader{ width: 100%; padding: 15px; border-bottom: 1px solid #eee; } .printHeader .rt_acts{ position: absolute; top: 10px; font-size: 20px; border: 1px solid #d03e43; border-radius: 100%; width: 28px; height: 28px; } .printHeader .rt_acts .ic_cls{ color: #d03e43; padding: 3px 0px; margin-right: -1px; } .printHeader .rest_head{ width:100%; text-align:center; padding: 0 15%; } .printHeader .rest_head .rest_name{ text-align:center;font-size: 16px; color: #d03e43; margin: 0 0 5px 0; padding: 0px; } .printHeader .rest_head .rest_adres{ text-align:center;font-size: 12px; color: #666; margin: 0px; padding: 0px; font-family: 'Roboto', Arial, sans-serif; line-height:18px; } .dtlsoftin{ width:100%; float:left; height:auto; } .dtlsoftin .dtls_row{ width:100%; float:left; margin-bottom: 10px; } .dtlsoftin .dtls_row li{ width:auto; float:left; padding:0 20px 0 0; margin:0px; list-style:none; font-weight:bold; } .dtlsoftin .dtls_row li span{ margin-left:5px; font-weight:normal; } .dtlsoftin .dtls_3{ width:100%; float:left; } .dtlsoftin .custmerAdres{ width:100%; float:left; margin-bottom: 10px; } .dtlsoftin .custmerAdres .rd{ color: #d03e43; } .dtls_order{ width:100%; float:left; height:auto; } .dtls_order .dtls_order_h1{ font-size: 14px; color: #d03e43; margin: 0 0 5px 0; padding: 0px; text-align:center; } .dtls_order .dtls_order_table{ width:100%; float:left; height:auto; margin-top: 10px; } .dtls_order .dtls_order_table .table{ margin:0 0 20px 0; padding:0px; border-bottom: 1px solid #eeeeee; color:#000000; } .dtls_order .dtls_order_table .table thead{ background:#eee; } .dtls_order .dtls_order_table .table tbody{ font-size:13px; } .dtls_order .dtls_order_total_wrap{ width:100%; float:right; height:auto; } .dtls_order .dtls_order_total_wrap table{ color:#000000; } .dtls_order .dtls_order_total_wrap .td_1{ width:35%; } .dtls_order .dtls_order_total_wrap .td_2{ width:65%; } .dtls_order .dtls_order_total{ width:100%; float:right; height:auto; font-size:13px; } .dtls_order .dtls_order_total li{ width:100%; float:left; padding:0 0 5px 0; margin:0px; list-style:none; font-weight:normal; } .dtls_order .dtls_order_total li span{ margin-left:5px; font-weight:bold; float:right; } .dtls_order .dtls_order_total hr{ float: left; width: 100%; margin-top: 10px; margin-bottom: 10px; border: 0; border-top: 1px solid #eeeeee; } .dtls_order .dtls_order_ftr{ width:100%; float:left; margin-top: 10px; }#orderstable{ margin: 0 0 20px 0; padding: 0px; border-bottom: 1px solid #eeeeee; color: #000000;width: 100%;margin: 0 0 20px 0;padding: 0px;font-size:13px; cellpadding:0; cellspacing:0; }#trhead{background: #eee;}.thheads{width:10%;vertical-align: bottom;border-bottom: 1px solid #dddddd;padding: 7px 0px;}#count{width:10%}#descript{width:25%}#itemprice{width:20%}#qaty{width:10%}#percetage{width:15%}#pricess{width:20%;}</style>";
window.plugins.PrintPlugin.print(fileContent,function()
{
console.log('success')
},function()
{
console.log('fail')},"",type,title);
},
2000);
Here is my code am printing div content through printer but some times working fine and some times am getting error like.... "Uncaught TypeError: Cannot read property 'PrintPlugin' of undefined"....please resolve this issue...
sorry to be very late I think your main problem with deviceready event can you just add your code after deviceready like that ` document.addEventListener('deviceready', function(){
var html = document.getElementById('printssss').innerHTML;
var type = "text/html";
var title = "Print.html";
var fileContent = html.replace(/"/g, '\'');
window.plugins.PrintPlugin.print(fileContent,
function(){
console.log('success')
},function(){
console.log('fail')
},"",type,title);
}, false); `