javascript IF语句错误

时间:2015-01-02 17:19:46

标签: javascript jsf-2.2

我遇到了一些我无法找到解决方案的JavaScript代码的问题,希望有些人可以帮我找到解决方案。

问题似乎与下面代码中的if语句if(a>b)有关。我得到不同的错误取决于我如何写if语句结束取决于我看起来我得到不同的错误。

Chrome的开发者工具说:

  

Uncaught SyntaxError:意外的令牌;

IE的开发者工具说:

  

Uncaught SyntaxError:意外的令牌)

如果我写if(3>1),我会得到相同的结果,所以我不认为它的a或b是问题所在。

如果我尝试if(b<a),那么glassfish会抛出一个异常,说下面的错误,其中第39行是if语句

  

跟踪错误[第39行]元素的内容必须包含   格式良好的字符数据或标记。

if(1<3)产生与if(b<a)

相同的结果

现在如果我写if(3===1)if(3===3)它工作正常并且代码运行完美并产生使用“===”符号的预期结果,但现在我需要能够使用{ {1}}或<

在将glassfish升级到4.1并将许多软件包升级到最新版本之前,此代码工作正常。

我已经多次重新编译并重新启动了服务器,但到目前为止还没有成功。

>

1 个答案:

答案 0 :(得分:1)

解决了这个问题。正如评论问题是模板引擎,它无法理解一些运营商。把它放在一个cdata文件中我解决了这个问题。

解决方案:

<script type="text/javascript">
    //<![CDATA[

        var span = $("[id='span#{component.clientId}']");

        var linkShow = $("<a/>");
        linkShow.attr("id", "linkShow#{component.clientId}");
        linkShow.attr("style", "color: #07A0DD;");
        linkShow.text("Visa mer");
        linkShow.hide();

        var linkHide = $("<a/>");
        linkHide.attr("id", "linkHide#{component.clientId}");
        linkHide.attr("style", "color: #07A0DD;");
        linkHide.text("Visa mindre");
        linkHide.hide();

        var a = "#{cc.attrs.text}".length;
        var b = #{cc.attrs.maxsize};
        if (a > b)
        {
            span.text("#{cc.attrs.text}".substring(0,#{cc.attrs.maxsize}) + "... ");
            $("[id='par#{component.clientId}']").append(span);
            $("[id='par#{component.clientId}']").append(linkShow);
            $("[id='par#{component.clientId}']").append(linkHide);


            $("[id='linkShow#{component.clientId}']").show();
            $("[id='linkShow#{component.clientId}']").click(function() {
                $("[id='span#{component.clientId}']").text("#{cc.attrs.text}");
                $("[id='linkHide#{component.clientId}']").show();
                $("[id='linkShow#{component.clientId}']").hide();
            });

            $("[id='linkHide#{component.clientId}']").click(function() {
                $("[id='span#{component.clientId}']").text("#{cc.attrs.text}".substring(0,#{cc.attrs.maxsize}) + "... ");
                $("[id='linkShow#{component.clientId}']").show();
                $("[id='linkHide#{component.clientId}']").hide();
            });
        }
       // ]]>
    </script>