Как получить значение текстового поля со стороны клиента и создать из него строку запроса? - PullRequest
2 голосов
/ 10 апреля 2009

Я использую jquery для модальных диалогов. Я хочу открыть диалог модели с одной страницы и отправить дополнительную строку запроса на страницу модального диалога как то так:

 <asp:HyperLink ID="hypClientSearch" runat="server" NavigateUrl="~/SomePage.aspx?KeepThis=true&additionalQS='<%= txtBox.Text %>'&TB_iframe=true&height=650&width=800&modal=true" CssClass="thickbox" > 

Этот пример не работает. Кто-нибудь знает решение?

Ответы [ 2 ]

4 голосов
/ 10 апреля 2009

В дополнение к ответу Хельги.
Если вы хотите получить значение текстового поля с помощью jQuery (когда вам нужно использовать другие селекторы, а затем идентификатор), вы можете использовать:

var textBoxValue = $(textBoxSelector, window.opener.document).val();

Редактировать
О, я просто заметил, что вы используете модал. Затем страница открывается в iFrame, вы можете получить значение из iFrame, используя:

var textBoxValue = $(textBoxSelector, window.parent.document).val();

Также, если вам нужно отправить его на сервер по запросу iFrame, попробуйте отредактировать атрибут href ссылки по клику:

$('#hypClientSearch').click( function() {
 var textBoxContent = $(textBoxSelector).val();
 $(this).attr('href', 'somepage.aspx?textbox='+textBoxContent+'&otherVarsForModal=foo');
 //we let the event bubble for the modal plugin, so ne returning false here
});
1 голос
/ 10 апреля 2009

Попробуйте это в модальном диалоговом окне, когда оно открывается (это клиентский JavaScript):

var textBoxValue = window.opener.document.getElementById("txtBoxId").value;

Затем вы используете Javascript для вставки дополнительной информации в нужное место в диалоге, например, с помощью JQuery.

...