2016-08-10 82 views
-1

要插入指向特定文件的鏈接我想向link-Dialog添加一個按鈕,該按鈕將打開我自己的php-filebrowser。CKEditor:將值傳遞迴鏈接插件

在這個文件瀏覽器中,我可以瀏覽特定的目錄以最終選擇一個pdf文件。

通過點擊一個文件,我想將這個文件的URL傳遞給鏈接對話框的url字段。這就是我不能領先的地步。

單擊文件時我發出的URL是我需要的。 所有我需要的是將JavaScript傳遞給開啓者的url字段。 我嘗試了幾個建議的解決方案,我發現在這個論壇上,但沒有任何幫助。

在我的文件瀏覽器中,我有一個文件列表。 每個文件都有這樣一個鏈接:

<a href="javascript:passvalue('*my_file_with_path*');">*filename*</a> 

這是JavaScript的部分我在filebrowser嘗試:

<script> 
    function passvalue(url) { 
     alert (url); 
     opener.SetValue(url, 'url'); 
     window.close(); 
    } 
</script> 

腳本提醒正確的值。但是下一行不會將值返回。

而不是「opener.SetValue(url,'url');」我也試過 window.opener.CKEDITOR.tools.callFunction(ckeditorfuncnum, url);
與傳遞給腳本的ckeditorfuncnum和
opener.SetUrl(url);

UPDATE: 看來,如果第二次嘗試(「window.opener.CKEditor ...」)是正確的。由於在我的輸入字段中沒有顯示任何值,我試圖返回一條錯誤消息... 錯誤消息正在窗口中顯示與CKEditor字段。

+0

你將需要發佈你已經嘗試瞭解決方案的代碼。 Stackoverflow並不意味着給你免費的代碼。 – Christophvh

+0

我嘗試了幾個選項,我在這個論壇發現: (url包含值傳回) - 「opener.SetUrl(url);」 - 「opener.SetValue(url,'url');」 - 「window.opener.CKEditor.tool.callFunction(funcnum,url);」 (funcum包含提交給腳本的值) – mdz

+0

更新您的原始帖子並添加儘可能多的與您的問題相關的代碼。用你提供的信息回答你的問題幾乎是不可能的 – Christophvh

回答

0

大家誰可能會在這兒碰上了同樣的問題是解決方案:

function passvalue(url) { 
    var dialog = window.opener.CKEDITOR.dialog.getCurrent(); 
    dialog.setValueOf('info', 'url', url); 
    dialog.setValueOf('info', 'protocol', 'http://'); 
    window.close(); 
    }