как закрыть палитру цветов в iframe?

у меня есть страница manageGroup.php, где пользователь может также добавить участника для группировки. Я использовал палитру цветов для показа addGroupMember.php. Теперь я должен закрыть ту палитру цветов, как только я сделал представление формы.

JavaScript я использую в manageGroup.php

<script language="javascript" type="text/javascript" src="js/jquery-1.3.2.js"></script>
<script type="text/javascript" src="js/dropdown.js"></script>
<script type="text/javascript" src="js/jquery.colorbox.js"></script>
<script type="text/javascript">
 $(document).ready(function(){
 $(".iframe").colorbox({width:"80%", height:"80%", iframe:true});
 });
</script>

Ссылка я использую для открытия палитры цветов

<a class="iframe" href="addGMember.php?id=<?php echo base64_encode($fetch->g_id)?>">Add Member</a>

код в addGroupMember.php похож на этот:-

if($_POST['add']=="Go")
{
  $gid = $_POST['id'];
  $ii=0;
  $insert = "INSERT INTO ".DBGMEMBER." (gm_g_id,gm_m_id) VALUES ";
  foreach($_POST['gMember'] as $gMember)
  {
    if($ii==0)
    {
        $insert .= " ('".$gid."' , '".$gMember."')";
    }
    else
    {
        $insert .= " ,('".$gid."' , '".$gMember."')";   
    }
    $ii++;
  }
  $db->execute($insert);// after this i want to close the colorbox
  echo "<script>parent.$.fn.colorbox.close(); </script>";// code i used, but not working
}
34
задан Ashish Rajan 20 January 2010 в 14:25
поделиться

6 ответов

Первое: уточнить вас вопрос. Представленная вами информация является какая-то, что сокращена. Там нет шансов, можно увидеть, что вы делаете. Также включите еще несколько примеров кода.

Только я мог догадаться, это то, что вы пытаетесь вызвать метод в том, как написано. Все, что вы добавляете в объект $ .FN, связан со всеми объектами jQuery.

// doesn't work
$.fn.colorbox.close()
// proper way
$('idOfDomElement').colorbox.close()

.. Фредрик

8
ответ дан 27 November 2019 в 16:06
поделиться

Я сделал это за себя, немного сумасшедший способ, в любом случае ты тоже можешь попробовать.

Предположим, ваша страница в iframe как x.php имеет форму с именем xyz

<?php
  if($_post['submit']=='Submit')
  {
    //some php code here
    if(success)
     echo "<script>parent.$.fn.colorbox.close(); </script>";
    else
    {
      //some error handling here;
    }
  }
?>
<form name='xyz' action='x.php'>
 //some html code here
 <input type='Submit' name='submit' />
</form>
16
ответ дан 27 November 2019 в 16:06
поделиться

Я думаю, проблема в том, что цветовой блок принадлежит родителю, а не DOM в iframe.

Я предполагаю, что вам нужно будет вызвать parent. [Способ получить элемент или объект $ .fn] .colorbox.close () или вам нужно будет добавить функцию в родительский документ и вызвать parent.myCloseFunction ()

2
ответ дан 27 November 2019 в 16:06
поделиться

Я просто пытался закрыть окно цветов из окна iframe, но не смог заставить его работать. Я использовал $ ('# closebox'). Colorbox.close () и безуспешно.

1
ответ дан 27 November 2019 в 16:06
поделиться

Убедитесь, что страница загрузилась внутри iFrame. Все необходимые ссылки на colorbox js, jQuery js не нужны.

Тогда родительский закрытый вызов будет работать:

parent.$('.yourElement').colorbox.close();
4
ответ дан 27 November 2019 в 16:06
поделиться

Этот вариант отлично сработал для меня и должен работать на вас


parent.jQuery.colorbox.close()

68
ответ дан 27 November 2019 в 16:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: