在csharp类中调用javascript

时间:2013-06-27 14:39:04

标签: c# c#-4.0

我上课了。只有deleteRecord函数

protected virtual void DeleteRecord
{
    if(..)
    {}
    else(..)
    {
         Page.ClientScript.RegisterStartupScript(this.GetType(), "Alert", "<script language='javascript'>alert('Are you sure?')</script>", true);
    }
}

我想显示javascript消息。但我认为我犯了一个错误。 我该怎么办?

2 个答案:

答案 0 :(得分:1)

您已将true添加到Page.ClientScript.RegisterStartupScriptaddScriptTags的最后一个参数。见http://msdn.microsoft.com/en-us/library/z9h4dk8y.aspx

因此,您基本上已在<script>

中添加了<script>

试试这个:

Page.ClientScript.RegisterStartupScript(this.GetType(), "Alert", "alert('Are you sure?')", true);

还要确保key参数对于页面是唯一的。如果您已经使用“警报”键的StartupScript,那么这也可以阻止它调用JavaScript代码。

答案 1 :(得分:0)

我创建了这个可以从任何网页调用的静态类:(我使用AJAX Toolkit作为脚本管理器,但你也可以使用ASP.NET中的默认类)

public static class ClientJS {
    public static void send(string js) {
        Page page = HttpContext.Current.Handler as Page;
        ToolkitScriptManager.RegisterStartupScript(page, page.GetType(), Guid.NewGuid().ToString(), "setTimeout(function(){" + js + "},1);", true);
    }
}

像这样使用它:

ClientJS.send("alert('Are you sure?');");