Передача jQgrid rowid из iFrame в диалоговое окно основного .html - PullRequest
0 голосов
/ 23 мая 2011

Мне нужна помощь здесь.У меня есть диалоговое окно, которое содержит iFrame с моим html-файлом jqgrid.Что я хочу сделать, так это то, что когда я дважды щелкаю данные из jqrid внутри этого диалогового окна, диалоговое окно автоматически закрывается и публикует идентификатор строки, которая была нажата в первом диалоговом окне.

Вот мой код JavaScript:

РЕДАКТИРОВАТЬ: (Примечание: этот код из subAccount.js)

$( "#mainGrid" ).click(function() { //note: mainGrid is inside of another dialog box where i should post the row id
   $( "#dialogMainAccount" ).dialog( "open" );  //this is the dialog box that contains my .html with jqgrid in it.
   $( "#dialogMainAccount" ).append(
      '<p>Please choose code to add in Sub Account Group.</p>'+
      '<iframe src="mainAccountGroup.html" width="100%" height="800">' +  // i use an iFrame to open my .html file
        '<p>Your browser does not support iframes.</p>' +
      '</iframe>');     
});

Редактировать: Это мойкод для закрытия диалогового окна внутри mainAccountGroup.js

$("#tblData1").jqGrid({
    .//some code here
    .
    .
    caption: "Main Account Group",
    ondblClickRow: function(rowid) {
       parent.$("#dialogMainAccount" ).dialog("close");
    ....
}); 

Я уже включил mainAccountGroup.js в свой subAccount.html. ПРИМЕЧАНИЕ, Первый вопрос: как закрыть диалоговое окно после двойного щелчка по строке в jqgrid.

Другой вопрос: как передать в iFrame идентификатор строки, по которому был щелкнен этот jqgrid?в текстовое поле первого диалогового окна?Передача значений из .html в iframe в диалоговое окно в основном html.

Ответы [ 3 ]

1 голос
/ 23 мая 2011

Если я вас правильно понял, вы можете просто вызвать $ ("# dialogMainAccount"). Dialog ("закрыть") или $ ("# dialogMainAccount"). Dialog ("уничтожить") внутри вашего ondblClickRow обработчика jqGrid для закрытия диалога.

UPDATE: если вы из кода, работающего в iframe, хотите получить переменную доступа myVar определите как глобальный (на верхнем уровне) вы должны использовать внутри iframe префикс parent.document: parent.document.myVar.

Если вам нужен доступ к элементам HTML, определенным в основном фрагменте, из iframe, вы должны использовать parent.document в качестве параметра context в jQuery .Например $('#mainAccount',parent.document).

0 голосов
/ 01 сентября 2011
$('jqgridId').parents('#dialogId').remove();

$('jqgridId').parents('#dialogId').dialogr('close');
0 голосов
/ 24 мая 2011

ответ на мой самый первый вопрос о том, как закрыть диалоговое окно ondblclick в jqgrid:

$("#tblData1").jqGrid({
    .//some code here
    .
    .
    caption: "Main Account Group",
    ondblClickRow: function(rowid) {
       parent.$("#dialogMainAccount" ).dialog("close"); //use parent since the dialog box is from the parent html
    ....
}); 

ответьте на мой второй вопрос о том, как передать значение из iFrame в родительский html:

parent.$('#mainAccount').val(rowid);   // the $('#mainAccount') in from the parent html.

надеюсь, это может кому-нибудь помочь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...