我有一个包含一个空asp:Panel,一个下拉列表让用户选择一个SPFielType ...在索引更改,我的HomePage.aspx.cs页面的HomePage.aspx将获得选中的文本,并将加载面板内的用户控件,该用户控件将生成一个基于用户选择的spfieldtype的控件和一个调用validateForm()函数的按钮......我的问题是Page_ClientValidate()函数里面的validateForm()不能找到验证器,我也试图给一个组名,但仍然无法正常工作。
当我把按钮放入我的aspx页面(不是动态呈现)时,它正在验证我的页面。(<asp:Button ID="submitbutton" Text="Validate" runat="server" />
)。
但是,当林使其动态,不能验证form..This是林试图做:Page_ClientValidate()对象预期错误,无法找到验证程序
protected override void CreateChildControls()
{
try
{
fieldRenderingControl = this.CreateFieldRenderingControl(this.FieldType);
this.Controls.Add(fieldRenderingControl);
Button button = new Button();
button.UseSubmitBehavior = false;
button.Text = "ValidateButton";
button.ID = "ValidateButton";
button.OnClientClick = "validateForm()";
this.Controls.Add(button);
RequiredFieldValidator newValidator = new RequiredFieldValidator();
newValidator.Text = "***";
newValidator.ID = "valideee";
newValidator.EnableClientScript = true;
newValidator.Enabled = true;
newValidator.SetFocusOnError = true;
newValidator.Display = ValidatorDisplay.Dynamic;
newValidator.ControlToValidate = fieldRenderingControl.ID;
this.Controls.Add(newValidator);
}
catch (Exception ex)
{
}
}
//的CreateFieldRenderingControl()函数将生成基于用户选择的参数字段类型控制。
在此先感谢。
您是否尝试使用诸如firebug或Web Developer之类的浏览器工具来调试您的js代码,以查看其发生故障的位置。 – gbs 2011-03-30 17:48:02
是啊我做了..他不能识别验证器..我dono为什么..我也试图添加验证器的SPFIeld的控件,但没有解决方案.. – Grace 2011-03-31 10:04:34