繁体   English   中英

从ASP.NET代码背后调用JS函数

[英]Calling JS function from ASP.NET codebehind

我的aspx页面中有两个javascript函数。 他们使用一些fabric.js函数。

function saveCanvas() {
    js = JSON.stringify(canvas.toDatalessJSON());
    $get('<%= txtJSON.ClientID%>').value = js;

}
function loadCanvas() {
    js = $get('<%= txtJSON.ClientID%>').value;
    canvas.clear();
    canvas.loadFromDatalessJSON(js);
    canvas.renderAll();
}

在后面的代码中:

 Protected Sub SaveJSON()
    Dim scriptKey As String = "123"
    Dim javaScript As String = "<script type='text/javascript'>saveCanvas();</script>"
    ClientScript.RegisterStartupScript(Me.GetType(), scriptKey, javaScript)
 End Sub

Protected Sub LoadJSON()
    Dim scriptKey As String = "456"
    Dim javaScript As String = "<script type='text/javascript'>loadCanvas();</script>"
    ClientScript.RegisterStartupScript(Me.GetType(), scriptKey, javaScript)
End Sub

现在我的问题是:为什么loadCanvas起作用而saveCanvas却不起作用? txtJSON未填充JSON字符串。 从aspx页面调用saveCanvas函数可以正常工作。

问题是回发完成后您调用saveCanvas ,并且此时画布数据已经消失了。

如果具有“保存”按钮,则需要在单击它时调用saveCanvas ,以便在浏览器将页面发回到服务器之前保存数据:

<asp:Button runat="server" Text="Save" OnClickClick="saveCanvas()" />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM