Полезная информация

Будьте в курсе последних изменений в мире Mozilla, следя за нашим микроблогом в Twitter.

№128-01-2014 17:37:54

djemen
Участник
 
Группа: Members
Зарегистрирован: 17-01-2014
Сообщений: 7
UA: Chrome 32.0

Передача данных с javascript в окно диалога

Никак не могу отправить строку с js-файла, который вызывает окно диалога в окно диалога
код js:

Выделить код

Код:

document.addEventListener("something-query1", function(event){dialog(event.target.nodeValue); }, true, true);

function dialog(data){
    console.log("-"+data);
    window.openDialog(
        "chrome://signature/content/someWindow.xul",
        "chrome, dialog, modal, resizable=yes",{dataObj:data}).focus();
    console.log("2-"+data);
}

и код вызываемого диалога:

Выделить код

Код:

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<!DOCTYPE overlay SYSTEM "chrome://signature/locale/propeties.dtd" >
<dialog
    width="500"
    id="myDialogId"
    title="&signature.serificate.label;"
    orient="vertical"
    onload="onLoad();"
    persist="screenX screenY width height"
    windowtype="myDialogWindowType"
    xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
    <script type="application/javascript" src="sign.js" />
    <hbox align="stretch">
        <label value="&signature.data.label;" control="data-text"/>
        <textbox id="data" width = "300" height = "100" multiline="true" />
    </hbox>
    <hbox align="stretch" >
        <label value="&signature.search.label;" control="find-text"/>
        <label id="find-text"/>
    </hbox>
    <hbox align="stretch">
        <label value="&signature.mark.label;" control="mark-text"/>
        <label id="mark-text"/>
    </hbox>
    <hbox align="stretch">
        <label value="&signature.id.label;" control="id-text"/>
        <label id="id-text"/>
    </hbox>
    <vbox align="start">
        <button id="open-button" label="&signature.serificate.buttonOpen.label;" oncommand='window.document.getElementById("find-text").value = openFile();' default="true"/>
        <button id="sign-button" label="&signature.serificate.buttonSign.label;" oncommand = "window.close();"/>
    </vbox>
    <script><![CDATA[
        var data;

        function onLoad() {
            console.log(window.arguments[0].dataObj);
            data = document.getElementById("data");

            if("arguments" in window && window.arguments.length > 0) {
                data.value = window.arguments[0].dataObj;
            }
        }
        ]]></script>
</dialog>

уже передрал несколько примеров. по итогу в логах ошибка -

Выделить код

Код:

TypeError: window.arguments is undefined

уже крутил по-разному - ума не приложу как же эту строчку передать в диалог.

Отсутствует

 

№228-01-2014 19:04:50

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 26.0

Re: Передача данных с javascript в окно диалога

https://developer.mozilla.org/en-US/doc … openDialog

newWindow = openDialog(url, name, features, arg1, arg2, ...)


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№329-01-2014 12:16:42

djemen
Участник
 
Группа: Members
Зарегистрирован: 17-01-2014
Сообщений: 7
UA: Chrome 32.0

Re: Передача данных с javascript в окно диалога

Огромное спасибо!!! Все оказывается просто, )

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]