2013-03-20 2 views
0

내 aspx 페이지에 두 개의 javascript 함수가 있습니다. 그들은 몇 가지 fabric.js 함수를 사용합니다. ASP.NET 코드 숨김에서 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 

이제 내 질문 : saveCanvas하지 않는 동안 왜 loadCanvas 작동합니까? txtJSON은 JSON 문자열로 채워지지 않습니다. aspx 페이지에서 saveCanvas 함수를 호출하면 정상적으로 작동합니다.

답변

0

포스트 백이 끝난 후 saveCanvas으로 전화를 걸면 그 시점에서 캔버스 데이터가 사라집니다.

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

내가 참으로 저장을 가지고 : 당신이 버튼이있는 경우

가 클릭하면 데이터가 브라우저 게시물 전에 다시 서버로 페이지를 저장되도록 다음 saveCanvas를 호출해야 "저장" 단추. "onclick"이벤트를 추가하면 오류가 발생합니다. "javascript는 aspx 페이지의 멤버가 아닙니다.": Foutbericht van compiler : BC30456 : javascript는 ASP.plattegrond_aspx입니다. – leof

+0

내 코드 숨김에 "saveCanvasbutton_click"이벤트가 있다는 것을 이해하십시오. 처음에는 "saveCanvas"를 여기에서 호출했지만 작동하지 않았습니다. – leof

+0

이 작동합니다 : 감사합니다! – leof

관련 문제