javascript - Why I obtain this error message when from a dialog I try to perform a function defined into the parent page using parent.rifiutaSingolo()? -
i have following problem trying perform javascript function dialog defined parent page opened dialog.
so have situation:
i have parent page page named autorizzafattura2
page open dialog (when user click on link dialog opened) javascript:
function opendialog2(pagina,larghezza,lunghezza,tipo) { //alert("into opendialog2(), pagina: " + pagina, " larghezza: " + larghezza + " lunghezza: " + lunghezza + " tipo: " + tipo); larghezza = '950px'; lunghezza = '470px'; lunghezza2 = '530px'; if (tipo == 3) { larghezza = '950px'; lunghezza = '470px'; lunghezza2 = '530px'; } if (tipo == 9) { larghezza = '950px'; lunghezza = '470px'; lunghezza2 = '530px'; } unitalargo = larghezza.substring(larghezza.length - 2, larghezza.length) unitalungo = lunghezza.substring(lunghezza.length - 2, lunghezza.length) var puntilarghezza = 0; var puntilunghezza = 0; if (unitalargo != "px") { //per default è in percentuale wlargo = (screen.width * larghezza) / 100; puntilarghezza = wlargo; wlargo = wlargo + "px"; } else { wlargo = larghezza puntilarghezza = larghezza.substring(0, larghezza.length - 2); } if (unitalungo != "px") { //per default è in percentuale wlungo = (screen.height * lunghezza) / 100; puntilunghezza = wlungo; wlungo = wlungo + "px"; } else { wlungo = lunghezza puntilunghezza = lunghezza.substring(0, lunghezza.length - 2); } var l = (screen.width / 2) - (puntilarghezza / 2); var t = (screen.height / 2) - (puntilunghezza / 2); dialparam = 'width=' + wlargo + ',height=' + wlungo + ',toolbar=no,directories=no,'; dialparam = dialparam + 'toolbar=no,location=no,directories=no,status=no,menubar=no,copyhistory=no,scrollbars=yes,resizable=no'; //alert("pagina: " + pagina); pag_aperta = window.open(pagina, 'popup_', dialparam); pag_aperta.moveto(l, t); pag_aperta.focus(); }
so, can see, popup opened window.open()
statement, one:
pag_aperta = window.open(pagina, 'popup_', dialparam);
ok, parent page (autorizzafattura2
) there defined rifiutasingolo()
javascript function, one:
function rifiutasingolo() { alert("into rifiutasingolo()"); chiudi(); $('#myrejectnote').css("visibility", "visible"); $('#rifiutatable').css("visibility", "visible"); $("#dialogreject").dialog("open"); document.getelementbyid('myrejectnote').focus(); }
ok, dialog opened opendialog2()
function there button clicked have perform rifiutasingolo()
function defined parent page:
<input style="color: #ffffff; font: bold 10px tahoma,arial,helvetica,sans-serif" class="bottone" readonly="readonly" type="button" value="rifiuta" onclick="parent.rifiutasingolo()">
i tried using parent
, in way: onclick="parent.rifiutasingolo()"
don't work , rifiutasingolo()
function not performed , in firebug
console obtain error message (when click on button):
typeerror: parent.rifiutasingolo not function
why? missing? how can fix issue , correctly perform rifiutasingolo()
function defined parent page?
solved myself.
the problem dialog not real dialog created , showd window.open
pag_aperta = window.open(pagina, 'popup_', dialparam);
so perform rifiutasingolo() defined parent page can't use this:
onclick="parent.rifiutasingolo()"
because related dialog have use this:
onclick="window.opener.rifiutasingolo()"
that related window
Comments
Post a Comment