いいえ、私は動的にAsp.net検証コントロールを作成し、更新パネルに挿入しています。検証はIEとFirefoxでは有効ですが、ChromeやSafariでは有効ではありません。Asp.netダイナミックバリデーターはChromeまたはSafariで動作しません
ここにはaspxファイルがあります。
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
私はボタンサーバーコントロールを使用していない理由はここに
<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>
が背後にあるコードである...聞かないでくださいChromeやSafariでこれを動作させる方法を知りたい人はいますか?
魅力的に働いてくれてありがとうございます。 –
ChromeはWebKitを使用していますが、独自のJavaScriptエンジンを使用していますので、このスクリプトの前にはまったく認識されていなかったようです。ちょうど 'App_Browsers'ファイルですが、うまくいけば動作します:) – Thorarin
投稿してくれてありがとう、私はchromeバージョン8.0.552.237で同じ問題がありました。面白いのは、上記の修正がなくても動作していたことです。それから、動作が停止しました。 – TheLukeMcCarthy