因此,我遵循了将外部js库添加到Forms Experience Builder中的当前标准方法(教程:https://www.youtube.com/watch?v=wRW4vBUT4oM)。
我能够成功添加jquery并运行jquery代码,但是我无法运行jsPDF库,但出现参考错误“ ReferenceError:未定义jsPDF”。
我正在运行onClick生成pdf按钮功能(请参阅:http://54.191.245.162:9080/forms/anon/org/app/f445e78b-fc77-4ef4-80f9-c82cfe207be8/launch/index.html?form=F_Form1)
这是我在应用程序启动时的代码
app.getSharedData().loadScript = function (url, callback) {
var head = document.getElementsByTagName('head')[0];
var script = document.createElement("script")
script.type = "text/javascript";
script.src = url;
script.onreadystatechange = callback;
script.onload = callback;
// Fire the loading
head.appendChild(script);
}
然后onNew表单事件我正在传递URL和回调函数
var JSPDFurl = 'https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.4.1/jspdf.min.js'
var jqueryURL = 'https://code.jquery.com/jquery-3.3.1.slim.min.js'
app.getSharedData().loadScript(jqueryURL, function () {
app.getSharedData().loadScript(JSPDFurl, function () {
function onClick() {
console.log('on click function is running')
console.log('JQUERY WORKING', $('.first-name input').val("jay chacko"))
var pdf = new jsPDF('p', 'pt', 'letter');
pdf.canvas.height = 72 * 11;
pdf.canvas.width = 72 * 8.5;
pdf.fromHTML(document.body);
pdf.save('test.pdf');
};
var element = document.getElementById("clickbind");
element.addEventListener("click", onClick);
})
})
答案 0 :(得分:0)
由于某种原因,最新版本的jsPDF在IBM FORMS中引发错误,可能是内部全局范围冲突。版本1.2.60及更低版本似乎可以正常工作,并且不会引发上述错误。