2

我一直在阅读有关ASP.NET 验证的内容,并在 SO's How do I get Client-side validation of ASP.Net page to run? 上找到了一个相关问题?,但似乎没有什么可以解决为什么某些验证会发布到浏览器。

显然,有些不对劲。正在显示以下文本:

var Page_ValidationActive = false; if (typeof(ValidatorOnLoad) == "function") { ValidatorOnLoad(); } function ValidatorOnSubmit() { if (Page_ValidationActive) { return ValidatorCommonOnSubmit(); } 其他 { 返回真;} } //]]>

最后一点看起来像一个 CDATA 结束标签,我拥有的唯一 CDATA 标签是从 Google 或 Facebook 等社交媒体网站链接的标签。

谁能告诉我这是什么原因造成的?

可能我有另一个设置告诉客户端将输出转储到浏览器,就像我在这篇文章中所做的那样。

4

2 回答 2

1

那里的代码中有一个CDATA部分。如果您复制它,您的代码也会如此。

CDATA我通过移动脚本上方的部分进行了实验并得到了相同的结果,如下所示:

<![CDATA[
<script type="text/javascript">
var Page_ValidationActive = false;
if (typeof(ValidatorOnLoad) == "function") {
    ValidatorOnLoad();
}

function ValidatorOnSubmit() {
    if (Page_ValidationActive) {
        return ValidatorCommonOnSubmit();
    }
    else {
        return true;
    }
}
//]]>
</script>

在这种情况下,CDATA应将标签移至script标签下方。或者,完全删除CDATA标签。

于 2012-08-03T00:32:46.780 回答
1

我不明白为什么脚本会显示在网页上,但错误是因为我的一个验证控件被错误地排除在组之外。

一旦我将所有验证控件都包含在验证组中,错误就消失了。

如果有人知道为什么将错误回显到浏览器,请告诉我,以便我可以从我的网站禁用此“功能”。

于 2012-08-08T13:47:18.797 回答