Я пытаюсь безуспешно получить дескриптор ввода текста в текстовое поле, которое содержится внутри диалогового окна xe :. Диалоговое окно xe: «появляется» после нажатия кнопки XPage. Вот мой код:XPages - получить значение текстового поля внутри диалогового окна
<xe:dialog id="InputDialog5">
<xe:this.title>"Input Dialog</xe:this.title>
<xp:panel>
<xp:inputTextarea id="InputTextBox5" value="#{document1.InputTextBox5}"
cols="60" rows="4"></xp:inputTextarea>
</xp:panel>
<xe:dialogButtonBar id="dialogButtonBar15">
<xp:button value="OK" id="button37">
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete" immediate="true">
<xp:this.action><![CDATA[#{javascript:
var request = facesContext.getExternalContext().getRequest();
var header = request.getHeader("Cookie");
var inputVal = @Middle(header,"InputTextBox5=",";")
setJobReferenceStatus(40,inputVal);
var redirect = "window.location='"+applicationScope.get("redirect")+"'";
facesContext.getViewRoot().postScript(redirect);}]]></xp:this.action>
<xp:this.script><![CDATA[
var inputvalue = document.getElementById("InputTextBox5").value;
alert("inputvalue = " + inputvalue);
dojo.cookie("InputTextBox5", inputvalue, { expires: 1 });
]]></xp:this.script>
</xp:eventHandler>
</xp:button>
</xe:dialogButtonBar>
</xe:dialog>
Моя идея заключается в том, чтобы получить значение текстового поля, добавить его в додзе печенья, получить значение куков с помощью SSJS, а затем передать значение в функцию SSJS. Однако код завершается уже на этапе получения значения textarea. Сообщение «alert» («inputvalue =» + inputvalue); не выполняется, и диалоговое окно остается «замороженным». Любая идея о том, как я могу решить эту проблему?
Спасибо, используя этот синтаксис позволил мне получить значение поля. К сожалению, передача его функции SSJS все еще не работает. –
Вы пытаетесь прочитать значение текстовой области, используя clientide JS для хранения значения в файле cookie, а затем используя SSJS для чтения значения из файла cookie? Пропустите CSJS и попробуйте использовать document1.getValue («InputTextBox5») в SSJS, чтобы прочитать значение. –
Хенрик - Спасибо за предложение. Я пробовал это без успеха. Чтобы избежать путаницы, я создал новый вопрос, содержащий обновленный код. Вы можете найти его здесь http://stackoverflow.com/questions/21826814/xpages-get-value-of-a-textarea-inside-a-dialog-part-2 –