Asp.net 在C中为弹出窗口调用javascript#
我写了一个脚本,创建了一个带有特定信息的弹出窗口Asp.net 在C中为弹出窗口调用javascript#,asp.net,Asp.net,我写了一个脚本,创建了一个带有特定信息的弹出窗口 function Showduplicate() { isDuplicate = true; var modal = document.getElementById('duplicate'); modal.style.display = ''; modal.style.position = 'fixed'; modal.styl
function Showduplicate() {
isDuplicate = true;
var modal = document.getElementById('duplicate');
modal.style.display = '';
modal.style.position = 'fixed';
modal.style.zIndex = '100';
modal.style.left = '30%';
modal.style.top = '40%';
var screen = document.getElementById('modalScreen');
screen.style.display = '';
return false;
}
modal是一个div元素。duplicate也是一个div元素,它包含某些复选框等。现在我在codebehind中检查一个查询,并相应地调用这个javascript函数。我尝试使用Page.RegisterClientScriptBlock方法,但未成功。所以你们能帮我在codebehind中调用javascript函数吗。我认为对于您的场景,您应该使用
Page.RegisterStartupScript()
。有关RegisterStartupScript()
和RegisterClient ScriptBlock()
之间区别的更多信息,请参见t。我假设您使用的是Asp.Net WebForms和Asp.Net Ajax。(同样的技术也可以应用于其他场景)
假设您有一个按钮,如:
<tr>
<td><input id="grid_1">Value</input></td>
<td><a href="javascript:addItem(1)">Add</a></td>
</tr>
你不应该忘记:
<asp:ScriptManager ID="ScriptManager" runat="server" EnablePageMethods="true" />
一般来说,您可以从JS调用C#函数,但不能从JS调用C#函数,反之亦然-至少不需要付出很大的努力。你到底想用这段代码做什么?它看起来像一个输入验证助手。我实际上是在处理网格中的复制,在网格中,我需要由用户决定是否在回发后创建记录,或者这是一个JS操作?页面的响应。RegisterStartupScript(“myscript”,“+”函数Showduplicate(){alert('hi');});我这样做了,但仍然无法调用弹出窗口
<asp:ScriptManager ID="ScriptManager" runat="server" EnablePageMethods="true" />