我有一個包含一個空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