【发布时间】:2014-10-28 00:42:27
【问题描述】:
我有一个下面的asp控件
<asp:Button ID="btnSave" onclick="return validate();"
runat="server" Text="submit" CssClass="next" />
下面是js函数Validate
function Validate()
{if (some condition){return true} else return false; }
此代码在 IE10 和 IE11 以外的所有浏览器中都可以正常工作 该函数始终返回一个值。但是当我在 IE11 或 10 中调试时,我遇到了问题 函数执行后的“函数外的'return'语句”。
真正的原因可能是什么?
好吧,我正在编辑这个问题,因为我刚刚知道这个问题是另外一回事。 我在 IE 的 Add Watch 中使用了完整的语句“return Validate()”来查看实际值,并且在函数之外得到了错误“return”语句”。当我只尝试使用“Validate()”时,我得到了“true” ' 作为它的值。函数根据条件返回正确的值 true 或 false,但我在 IE10 或 IE11 中遇到的实际问题是,即使在 Validate 函数的返回值为 true 之后,我的表单也没有提交到服务器。 有什么想法吗?
【问题讨论】:
-
通过“查看源代码”在浏览器中查看代码会很有帮助。在纯 HTML 中,事件处理程序属性的值总是隐式包装在函数体中。
-
你可能会因为专注于“if else”而走错了路。这可能是真正的原因。
标签: javascript asp.net internet-explorer-10 internet-explorer-11