0

コードから Javascript 関数を呼び出そうとしていますが、Object Expected js エラーが発生します。

関数への私の呼び出し:

            ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type=\"text/JavaScript\">returnVal();</script>");

そして、.aspx からの私の JavaScript

<script language ="javascript">
function returnVal() {
    var hidAppID = document.getElementById("hidAppId");
    var hidAppName = document.getElementById("hidAppName");
    var hidAppSox = document.getElementById("hidAppSox");

    if (window.showModalDialog) {
        var sharedApp = {};
        sharedApp.Id = hidAppID.value;
        sharedApp.Name = hidAppName.value;
        sharedApp.Sox = hidAppSox.value;

        window.returnValue = sharedApp;
    }
    window.close();
}
</script>

JavaScript は有効です。「onclicked」呼び出しをテストするために、一時的なボタンをページに追加しました。残念ながら、コードから呼び出す必要があります。

4

2 に答える 2

1

タグを埋め込まずに呼び出してみてください。ただし、代わりに 3 番目のパラメーターを渡します。

ClientScript.RegisterClientScriptBlock(GetType(), "script", "returnVal();", true);
于 2013-07-25T21:27:59.223 に答える
0

改行文字のエスケープシーケンス\returnVal();を作成する文字列を入力したため、存在しない関数を呼び出そうとします。\returnVal

コードからバックスラッシュを削除します。

ClientScript.RegisterClientScriptBlock(GetType(), "script", "<script type=\"text/JavaScript\">returnVal();\n</script>");
于 2013-07-25T21:28:11.557 に答える