[英]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.