hai,
我有一个名为sss()的javascript函数。我想从后面的代码中调用它。
function sss() {
$("#div-TableContent").show("slow");
alert("its Works");
};
我使用了这段代码
Private Sub dataGridView_RowEditing(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles dataGridView.RowEditing
If (Not ClientScript.IsStartupScriptRegistered("sss")) Then
Page.ClientScript.RegisterStartupScript(Me.GetType(), "alert", "sss();", True)
End If
End Sub
但是当网格位于ajax更新面板中时,它不会触发。为什么呢?
答案 0 :(得分:2)
如果您正在使用Ajax组件,则应编写如下内容:
If (Not ClientScript.IsStartupScriptRegistered("sss")) Then
ScriptManager.RegisterStartupScript(Me, Me.GetType(), "sss", "sss();", True)
End If
Page.ClientScript
已被废弃。另请注意,第三个参数是一个键,您正在检查错误的键。
答案 1 :(得分:-1)
你可以放入一个面板并注入一些javascript:
<asp:Panel id="javascripInjectorPanel" runat="server">
并在您的代码背后,执行:
javascriptInjectorPanel.Controls.Add(new LiteralControl("<script type=\"text/javascript\">sss();</script>"));
当页面刷新时,它应该被执行。可能值得尝试使用ASp.ENT AJAX,但不确定它是如何工作的。