如何將uniurlframe中html調用delphi的函數
阿新 • • 發佈:2019-02-08
app ext set 好的 服務端 request getwidth 最好的 範例
uniGUI總群中臺中cmj朋友為我們總結了如下內容,對於利用delphi+uniGUI開發應用,可以說是精品,必須掌握。 一句話,如何在html與delphi間交互代碼,是最好的答案。 [ClientEvents操作] Js存取Edit,Memo元件值getValue,setValue MainForm.Edit1.setValue(“ABCDE”); //把值設定給Edit1 Ext.getCmp( MainForm.Edit1.id ).setValue(值); //把值設定給Edit1 MainForm.Edit1.getValue(); //取Edit1的值 Ext.getCmp( MainForm.Edit1.id ).getValue() ); Js存取Label MainForm.Label1.setText(值);//設定 Ext.getCmp( MainForm.Label1.id ).setText(值); Ext.getCmp( MainForm.Label1.id ).getWidth(); //取寬度 var a=document.getElementByIdx_x( MainForm.Label1.id ). innerText; //取值 var a=Ext.getCmp( MainForm.Label1.id ).text; //取值 MainForm.UniButton4.getId(); //取Unigui控件id MainForm.UniButton4.id; //取Unigui控件id [UniURLFrame之使用] UniLoginForm1.UniURLFrame1.iframe.contentWindow.document.getElementByIdx_x(‘container‘). innerHTML=‘‘; UniLoginForm1.UniURLFrame1.iframe.contentWindow.oldPoint = null; top.document.getElementByIdx_x(top.MainForm1.BT_del.getId()).click(); top.MainForm.UniEdit1; 你在UniURLFrame中可以直接用top.form.控件 這是extjs封裝過的 top.ajaxRequest(top.MainForm.UniURLFrame1,‘TestEvent‘,null); 這樣的服務端的UniURLFrame1的OnAjaxEvent就會觸發 所以得一個結論 在UniURLFrame使用extjs的東西要加top. 控件如top.MainForm.UniEdit1 函數如top.ajaxRequest 多參考demo中ajax的範例 delphi中簡單使用 UniSession.AddJS();//以執行js code [unigui引用自定義js檔] 範例: test.js存放在files\下 內容: function aa(){ alert(“aa”); } 引用:uniServerModule的CustomFile屬性設定 files/public.js or files\public.js 使用1: 在delphi的程式 UniSession.AddJS(‘aa();‘); //定義在UniGUIApplication 使用2: 在元件(控件)的ExtEvents.OnClick內 alert(“aa”); 結論: 1.在delphi中如何取html的東西? 2.在js中如何取unigui的東西 3.js->delphi使用ajax 4.delphi接ajax在控件的onajaxEvent中寫程式 ueditor應該是hmtl 用ajax->delphi就是html字串
如何將uniurlframe中html調用delphi的函數