首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未在XPinC中定义的函数

未在XPinC中定义的函数
EN

Stack Overflow用户
提问于 2014-04-26 00:26:23
回答 1查看 85关注 0票数 0

我正在使用一个短函数来检查XSP._isDirty,它可以在浏览器和旧版本的XPinC中正常工作。当我将代码直接放到自定义控件上的链接中作为客户端脚本时,它会运行,所以这并不是说_isDirty不再工作。

在9.0.1版本的XPinC中,单击调用该函数的链接不会执行,并会向状态栏报告未定义isClean。

我的函数在我的clientSideFunctions.js脚本库中,并通过主题加载。下面是加载过程:

代码语言:javascript
复制
<script target="xsp" src="/clientSideFunctions.js" clientSide="true" type="text/javascript"></script>   

这在8.5.3 XPinC和浏览器中都有效。

代码语言:javascript
复制
function isClean() {
    try {
        if (XSP._isDirty()){
            if (confirm ("Are you sure you want to navigate away from this page?" + "\n" +
                    "This document may contain unsaved changes." + "\n" +
                    "Press OK to continue, or Cancel to stay on the current page.")){
                return true;
            } else {
                return false;
            }
        } else {
            return true;
        }
    } catch (e) {
        return true;
    }
}

该函数是作为链接的客户端脚本调用的,因此我可以检查用户是否弄脏了页面。当使用这些链接时,enableModifiedFlag不会产生漂亮的小警告对话框,而是执行javascript。

代码语言:javascript
复制
<xp:link text="Excel reporting" escape="true" target="_self" id="link11" value="/util_ExcelReport.xsp">
    <xp:this.styleClass><![CDATA[#{javascript:if (compositeData.currentSubLink == "imp_ExcelExports") "selected"}]]></xp:this.styleClass>
    <xp:eventHandler event="onclick" submit="true" refreshMode="complete">
        <xp:this.script><![CDATA[return isClean();]]></xp:this.script>
    </xp:eventHandler>
</xp:link>

那么,如果代码将被执行,并且脚本库被加载到主题中,为什么它总是抛出错误呢?我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2014-04-26 02:30:23

它真的加载了吗?

代码语言:javascript
复制
<script target="xsp" src="/clientSideFunctions.js" clientSide="true" type="text/javascript"></script>   

看起来您正在尝试使用输出脚本,但您正在使用HTML标记脚本

因此,/clientSideFunctions.js将尝试相对于server.com/clientSideFunctions.js加载库,而不是相对于数据库。

也许可以用这个来代替?

代码语言:javascript
复制
<xp:this.resources>
    <xp:script src="/clientSideFunctions.js" clientSide="true"></xp:script>
</xp:this.resources>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23298365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档