为清楚起见,请考虑以下基于母版页文件的表单。
表格:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Test.aspx.cs" Inherits="Secured_Test" MasterPageFile="~/MasterPages/Test_SiteMaster.master" %>
<asp:Content runat="server" ContentPlaceHolderID="MainPageContent">
<script type="text/javascript">
function ClientValidate(source, args)
{
alert('foo');
}
</script>
<asp:DropDownList runat="server" id="ddl">
<asp:ListItem Text="value 1" Value="1" />
<asp:ListItem Text="value 2" Value="2" />
</asp:DropDownList>
<asp:CustomValidator ID="CustomValidator1" runat="server" Text="Error!" ClientValidationFunction="ClientValidate" />
<asp:Button ID="Button1" runat="server" Text="Submit" CausesValidation="true" />
</asp:Content>
我的母版页包含以下代码:
<asp:ScriptManager ID="ToolkitScriptManager1" runat="server">
<Scripts>
<asp:ScriptReference Name="jquery" />
</Scripts>
</asp:ScriptManager>
问题/问题:
照原样,ClientValidate
函数永远不会触发。如果我删除 MasterPageFile 中的 ScriptManager 调用,代码将按预期工作(ClientValidate
被调用并在单击按钮时发出警报)。先感谢您!