有没有办法在javascript警告框中生成cal后面的代码。我在网格视图上使用了一个按钮。点击它..它应该警告一个确认框...然后做一个cal代码后面的功能。这是cal背后代码的一部分。
protected void GridView1_RowDataBound(object source, GridViewRowEventArgs e)
{
......
btnAlertStatus.Attributes.Add("onclick", "javascript:if(confirm('Are you sure you want to send an email " + ID+ " ?') == true) EmailTest(ID); ");
......
}
protected void EmailTest(int ID)
{
}
这样我就无法访问send_Email ....有没有更好的方法在rowboundevent中调用此函数
答案 0 :(得分:1)
JavaScript
在客户端上运行。
ASP.NET (CodeBehind)
在服务器上运行。
您无法直接从客户端执行服务器上的方法。您通常做的是执行新请求,告诉服务器运行该方法,然后将结果返回给客户端。
在您的情况下,请侦听警报框何时关闭,然后对服务器执行postback
。您也可以使用ajax作为@Kek建议,为此,请查看jQuery或ASP.NET Ajax。
答案 1 :(得分:1)
您可以使用WebMethod
,查看Using jQuery to directly call ASP.NET AJAX page methods
答案 2 :(得分:0)
你可以,但你需要使用ajax或Jquery
在代码后面创建这个测试方法
[System.Web.Services.WebMethod]
public static string SayHi()
{
return "Hi";
}
然后在您添加的表单标记正下方的aspx页面中添加
<asp:ScriptManager ID="scriptManager" EnablePageMethods="true" runat="server"/>
然后在您的aspx页面中添加此代码
<script>
function GetHi() {
PageMethods.SayHi(onComplete);
}
function onComplete(result) {
alert(result);
}
GetHi();
</script>