我有这个javascript函数,可使用jspdf创建一个pdf文件,我需要可以通过两个事件(按钮单击和Modal.open)进行访问。该pdf函数需要从ajax调用中获取数据,然后创建pdf并将其传递给调用函数(事件)。
调用功能:
$('#LabelsModal').on('show.bs.modal', function () {
createLabels(function (labels) {
// Labels is undefined here
$('#labels').html("").attr("src", labels.output('bloburl'));
});
});
函数createLabels(如何将pdf传递给父函数?)
function createLabels() {
getLabelData().done(function (labels) {
// Here is the labels defined and OK
var pdf = new jsPDF('l', 'mm', [150, 100]);
pdf.setFontSize(12);
pdf.setFont('helvetica', 'normal');
pdf.text(1, 5, "Test");
return pdf; //Doesnt work
})
}
最后是使用ajax获取数据的函数(这可行):
function getLabelData() {
return _myService.getDataForLabels({ Id: id });
}