2016-04-28 7 views
0

Liferay.Utils.Windowを使用してウィンドウを開く(A)、そのウィンドウ内で別のウィンドウを開く(B)、ウィンドウを閉じる(B)親をリロードするウィンドウ(A)。私はLiferay.Portlet.refresh( "p_p_id_IdPortlet")を使用することはできません...問題はありません、このようなiframeをリロードしました:iframeウィンドウを使用してjqueryで要素を取得する

$( '#' + windowId).find( ' attr( 'src'、function(i、val){return val;});

そして「ヌルのプロパティを読み取ることができません 『検索』(...):1キャッチされない例外TypeError VM10008」私の問題が表示されるのはここ

は、私はクロームコンソール上でそのコードを実行しようとすると、私は を取得し、あります奇妙なことに、HTMLの要素を調べて、クロム要素のタブを変更すると、コンソールに戻り、同じコードをもう一度実行して、動作します。私は、何かがロードされているDOMのいくつかの要素を調べるとき、私が検索している要素を見つけることを可能にするものだと思います。どんな助けもありがとうございます。

よろしく、

編集:私は理解して例を残す:私はクラスで要素を検索し、それを設立、それはでそれを見つける文句を言わない見られるようにクロームコンソールで、私は

$('.dialog-iframe-node') 
<iframe class=​"dialog-iframe-node " frameborder=​"0" id=​"newAssignmentRoleDialogId_iframe_" name=​"newAssignmentRoleDialogId_iframe_" src=​"http:​/​/​localhost:​8080/​group/​catalogo-de-datos/​manage-people?p_p_auth…e&_assignmentroletoperson_WAR_abecebcatalogportlet_personFirstName=Eduardo" style=​"height:​ 485px;​ width:​ 1218px;​">​#document</iframe>​ 
$('#newAssignmentRoleDialogId_iframe') 
null 

を書きます私が要素が存在することを教えてくれた後にID

+0

あなたのJSコードが内部文書を実行している可能性があります。親文書を使ってみることはできますか? window.parentのようなものです。 –

+0

私はこれを試しましたが、どちらもうまくいきませんでした。window.parent.butにアクセスして、そこに私のmodals idを見つけることができません。 – Elver

+0

iframeのid属性は '$( 'newAssignmentRoleDialogId_iframe')' newAssignmentRoleDialogId_iframe_'。最後の '_'がjQueryセレクタにありません。 –

答えて

0

あなたの解決策は私にとってはうまくいきませんでした。私は使用しました: document.location.href=parentURL; ここでparentURLはパラメータで渡されたので、iframeをリロードしました。お時間をいただきありがとうございます

関連する問題