javascript - 在服务器 Onclick 事件之后调用 Javascript 函数

标签 javascript

我有一个按钮点击事件的代码:

protected void Button1_Click(object sender, EventArgs e)
{
    string message = "";
    //Series of codes to change the message variable

    Page.ClientScript.RegisterStartupScript(GetType(), "", "ShowMessage(" + message +");", true);
    }



<script type="text/javascript">
    function ShowMessage(msg){
        alert(msg);
    }
</script>

这不会显示消息。也许我的 RegisterStartupScript 不正确?

最佳答案

尝试以下,

  1. 您必须为您的脚本提供一个有效的名称。 http://msdn.microsoft.com/en-us/library/z9h4dk8y.aspx

    A startup script is uniquely identified by its key and its type. Scripts with the same key and type are considered duplicates. Only one script with a given type and key pair can be registered with the page. Attempting to register a script that is already registered does not create a duplicate of the script.

  2. ShowMessage应该在页面中定义

  3. 您必须将参数作为字符串传递。 ShowMessage('"+ message +"');

  4. 最终代码应该是这样的

Page.ClientScript.RegisterStartupScript(GetType(), "myAlertScript", "ShowMessage('"+ message +"');", true);

更新


如果页面中有更新面板,请尝试使用以下代码。

ScriptManager.RegisterClientScriptBlock(this,typeof(Page),"myAlertScript","ShowMessage('" + message +"');", true);

关于javascript - 在服务器 Onclick 事件之后调用 Javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16787302/

相关文章:

javascript 通过 id 获取 child

javascript - 该程序片段如何检查声明的对象是否在javascript程序的当前范围内

javascript - 如何迭代 FileSystemDirectoryHandle 的内容?

javascript - 如何解决HTMLUnit中的 "JavaScriptException value = SyntaxError: with statements not allowed in strict mode"

javascript - 函数通过调用自身来复制 JavaScript 中的对象,需要帮助理解逻辑

javascript - 访问 AngularJS 中的文件列表

javascript - 我应该在 angular ng-disabled 上使用函数吗?

javascript - 如何通过单击进行多个图像下载

javascript - Twitter Bootstrap .on ('show' ,function(){});不适用于弹出窗口

javascript - 复 Protractor 选择器