从代码后面调用js会遇到一些麻烦。 这是我的js代码
function showDialog() {
var options = {
url: 'DialogWindow.aspx',
width: 600,
height: 200,
title: 'Test',
showClose: true,
dialogReturnValueCallback: dialogReturned
};
SP.UI.ModalDialog.showModalDialog(options);
}
function dialogReturned(dialogResult, returnValue) {
if (dialogResult == SP.UI.DialogResult.OK) alert("OK");
else alert("CANCEL");
}
这是我调用js函数的c#代码
if (!WriteDataToSm())
{
//Error Handling
string script = "<script language='javascript'>showDialog()</script>";
Page.ClientScript.RegisterClientScriptBlock(GetType(), "Register", script);
}
但是我得到了一个js错误:
Uncaught TypeError: Cannot read property 'hiddenButtonValueBeforeDialog' of undefined
但是当我创建一个按钮并在onclick事件中调用js函数showDialog()时。一切正常。请问这可能是什么原因?
答案 0 :(得分:0)
我正在使用这行代码从后面的代码执行javascript:
page.ClientScript.RegisterStartupScript(page.GetType(), "idicosNotify", "$(function () { ExecuteOrDelayUntilScriptLoaded(function () { SP.UI.Notify.addNotification(\"" + message + "\", false); }, \"sp.js\"); });", true);
当您可以使用按钮调用javascript函数时,它没有任何问题。