我正在使用netsuite。我想在netsuite中使用jquery。请帮忙。
答案 0 :(得分:9)
你根本不需要做任何事情;默认情况下,jQuery包含在所有NetSuite页面中。您可以在任何客户端脚本中访问它;它不适用于服务器端脚本。请注意,您必须使用jQuery
而不是$
来引用它,例如
jQuery('#myElementId').hide()
答案 1 :(得分:2)
根据我的发现,Netsuite到目前为止还没有提供任何直接的方法(API)来在SuiteScripts中实现jQuery。所以,你需要按照欺骗性的方式在你的Netsuite屏幕上完成jQuery的工作。
在这篇提示中,我将展示如何在Netsuite屏幕中使用'jAlert',让我们看看它是怎么回事: -
1)在这个例子中我们需要3个文件: - -jquery.min.js -jquery.alert.js -jquery.alert.css 您可以在Netsuite帐户(文件柜)中托管这些文件,也可以使用任何CDN进行参考。
2)创建一个客户端脚本.js文件,其功能将在“Page Init”函数中调用。在此函数中,您可以编写代码将上述3个文件添加到Netsuite页面的HTML DOM中。
function OnPageInit()
{
AddJavascript('http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js', 'head');
var t = setTimeout("AddJavascript('https://system.netsuite.com/core/media/media.nl?id=253&c=TSTDRV896291&h=c3fc87f394f396552e09&_xt=.js', 'body')", 3000);
AddStyle('https://system.netsuite.com/core/media/media.nl?id=254&c=TSTDRV896291&h=50d488b82c3c3ed7263c&_xt=.css', 'head');
}
function AddJavascript(jsname, pos)
{
var tag = document.getElementsByTagName(pos)[0];
var addScript = document.createElement('script');
addScript.setAttribute('type', 'text/javascript');
addScript.setAttribute('src', jsname);
tag.appendChild(addScript);
}
function AddStyle(cssLink, pos)
{
var tag = document.getElementsByTagName(pos)[0];
var addLink = document.createElement('link');
addLink.setAttribute('type', 'text/css');
addLink.setAttribute('rel', 'stylesheet');
addLink.setAttribute('href', cssLink);
tag.appendChild(addLink);
}
在'OnPageInit'函数中,我们首先添加'jquery.min.js'(谷歌CDN),然后我们使用'setTimeout'方法在添加第二个脚本之前的几秒钟内做一段时间。这是因为,当页面加载时,它将首先下载'jquery.min.js'脚本可能需要一些时间,因此当第二个脚本'jquery.alert.js'被加载时可能显示'jquery undefined'错误。为了避免这种情况,我们可以使用'setTimeout'来延迟在页面的DOM中添加'jquery.alert.js'脚本。之后,CSS也被添加到它。在这段代码中,我们在Netsuite的'File Cabinet'文件夹中托管了'jquery.alert.js'和'jquery.alert.css'。
3)现在部署客户端脚本。假设您已将其部署为“客户”记录。现在,我们可以测试'jAlert'是否适用于客户记录屏幕。
4)假设您编写了一个客户端脚本函数,该函数将在“客户”屏幕的“保存记录”事件中调用。
function OnSaveRecord()
{
jAlert('Custom Alert Box Test', 'This is a jAlert Box!');
}
5)现在在“客户”屏幕中测试“Page Init”和“Save Record”功能是否正常工作。
如果您在Netsuite的SuiteScripts中有其他一些使用jQuery的技巧,那么请在下面提到。