4
好的,我正在動態創建Asp.net驗證控件並將它們插入到更新面板中。驗證適用於IE和Firefox,但不適用於Chrome或Safari。Asp.net動態驗證器在Chrome或Safari中不起作用
這是aspx文件。不要問我爲什麼不使用一個按鈕服務器控件...
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<div>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Always" runat="server">
<ContentTemplate>
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
<input id="Button1" type="button" value="submit" onclick='javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("Button1", "btnNext", true, "", "", false, true))' />
</ContentTemplate>
</asp:UpdatePanel>
</div>
這裏是後面的代碼:
Dim Survey As New Survey
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Request("__EVENTARGUMENT") = "btnNext" Then
NextClick()
End If
Label1.Text = Date.Now.ToString
End Sub
Private Sub NextClick()
Survey.RenderPage(PlaceHolder1)
End Sub
這裏是類:
Public Class Survey
Public Sub RenderPage(ByVal PlaceHolder As PlaceHolder)
Dim textbox As New TextBox
textbox.ID = "testing"
PlaceHolder.Controls.Add(textbox)
Dim val As New RequiredFieldValidator
val.ControlToValidate = textbox.ID
val.Text = "required"
val.EnableClientScript = True
PlaceHolder.Controls.Add(val)
End Sub
End Class
有沒有人有任何想法如何讓這個工作在Chrome和Safari?
像一個魅力一樣工作,非常感謝你。我也相信Safari和Chrome都是這樣的。 – 2009-08-07 21:44:26
這就是我所希望的,Chrome使用WebKit,但它有它自己的JavaScript引擎,我猜這只是在這個腳本之前根本沒有被識別出來,或許你可以用它來解決這個問題。只是一個'App_Browsers'文件,但如果它的工作,它的工作:) – Thorarin 2009-08-07 21:47:44
感謝您的帖子,我有相同的問題在鉻版本8.0.552.237。有趣的是,它沒有上面的修復工作開始,然後它停止工作。 – TheLukeMcCarthy 2011-01-17 11:59:02