2012-05-07 15 views
0

私は、colorboxを使用してiframeにページを開いています。このページにはチェックボックスがあります。カラーボックスが閉じているとき、私はそのチェックボックスがクリックされたかどうかをチェックし、そうであれば関数を実行したい。ここでColorbox onClosed親ページを有効にする機能

は私が持っているものです。

$(".colorbox").colorbox({ 
     rel:'group1', 
     iframe: true, 
     width:100+"%", 
     height:100+"%", 
     onClosed:function(){ 
      var chosenMap = $("input:checkbox#modern"); 
      if (chosenMap.checked) { 
       alert("checked"); 
       }else{ 
      alert("not checked"); 
       } 
     } 
     }); 

やカラーボックス内のHTMLは次のとおりです。

<form> 
<label for="modern" class="check activeCheck"><input type="checkbox" name="Style" id="modern" >Custom</label> 
<input class="next button" type="button" value="Back" onclick="parent.$.colorbox.close(); return false;" > 
</form> 

答えて

1

1)の後にトリガをonClosedので物事は、このルートを下って行く複雑得ようとしていますiframeが削除され(そしてデータが破棄され)、2)onClosedが正しいDOMでトリガされていないため、#modernを見つけることができません。 iframeドキュメントにinput#modernが存在する場合は、別の方法でクエリを実行する必要があります。代わりに、あなたはparentを呼び出す前にあなたがしなければならないことをしないでください。$。colorbox.close()?例:

<script> 
function chosen() { 
      var chosenMap = $("input:checkbox#modern"); 
      if (chosenMap.checked) { 
       alert("checked"); 
       }else{ 
      alert("not checked"); 
       } 
      parent.$.colorbox.close(); 
} 
</script> 
<input class="next button" type="button" value="Back" onclick="chosen(); return false;" > 
+0

恐縮です。 – Bart

関連する問題