我在我的KRL全局块中定义了一个Javascript函数,当用户单击链接时,我希望调用该函数。以下是规则集的相关部分:
global {
emit <|
function clear_hold() {
app = KOBJ.get_application("a421x26");
app.raiseEvent("clear_hold");
}
|>;
}
rule add_link_to_clear_hold {
select when pageview ".*"
pre {
clear_div = << <div id="clear_hold">
<a href="javascript:clear_hold()">Clear Hold</a>
</div> >>;
}
{
append("body", clear_div);
}
rule clear_the_hold {
select when web clear_hold
{
replace_html("#clear_link", "<div id='clear_link'>Not on hold</div>");
}
always {
clear ent:hold;
}
}当我单击该链接时,我得到一条错误消息,指出clear_link未定义。
我需要做什么来调用我的javascript函数?
发布于 2011-01-13 04:47:26
建议使用以下名称间隔方法将JavaScript函数附加到KOBJ对象,以避免与用户可能正在运行的其他应用程序发生冲突。
KOBJ.a60x33.clear_hold = function() {
KOBJ.log('...wohoo! You found me!');
}然后可以使用以下命令调用该函数
KOBJ.a60x33.clear_hold();发布于 2011-01-13 04:12:13
函数是在KRL闭包内部定义的,但我是从闭包外部调用的。为了使其在外部可见,我在定义函数后将其添加到KOBJ中
KOBJ.clear_hold = clear_hold;然后从链接调用它:
href="javascript:KOBJ.clear_hold()https://stackoverflow.com/questions/4673521
复制相似问题