K2灯箱不会在保存时关闭

时间:2012-08-12 00:47:03

标签: php javascript joomla joomla-k2

所以这是一个常见的问题,问题是我有一个带有K2扩展名并运行JAWall模板的Joomla网站。我的问题是当用户想要在我的网站的前端发布项目并点击时保存弹出的灯箱不会关闭。帖子被添加,并且有一些更新,但框保持不变。

我找到了一些讨论该问题的论坛和一个Google代码错误报告here,再次在K2论坛here和Joomla论坛上再次讨论,但他们都没有一个有效的解决方案对于我的情况。我可以添加一个

window.parent.location.reload()

这将有效,但如果用户在帖子中上传某些媒体,它将不会等待。那么如何让这个功能等待上传呢?我试图添加的代码很长,但主要部分位于顶部,所以我会在这里发布,希望能帮助别人更好地了解情况。

<?php


// no direct access
defined('_JEXEC') or die('Restricted access');

$document = & JFactory::getDocument();
$document->addScriptDeclaration("
Joomla.submitbutton = function(pressbutton){
    if (pressbutton == 'cancel') {
        submitform( pressbutton );
        return;
    }
    if (\$K2.trim(\$K2('#title').val()) == '') {
        alert( '".JText::_('K2_ITEM_MUST_HAVE_A_TITLE', true)."' );
    }
    else if (\$K2.trim(\$K2('#catid').val()) == '0') {
        alert( '".JText::_('K2_PLEASE_SELECT_A_CATEGORY', true)."' );
    }
    else {
        syncExtraFieldsEditor();
        \$K2('#selectedTags option').attr('selected', 'selected');
        submitform( pressbutton );
        //window.parent.location.reload();//this is what i added            
    }
}
");

?>



<form action="index.php" enctype="multipart/form-data" method="post"
 name="adminForm"    id="adminForm">
<?php if($this->mainframe->isSite()): ?>
<div id="k2FrontendContainer">
    <div id="k2Frontend">

        <table class="k2FrontendToolbar" cellpadding="2" cellspacing="4">
            <tr>

                <td id="toolbar-save" class="button">
                    <a class="toolbar" href="#" onclick="javascript: submitbutton('save'); return false;"> <span title="<?php echo JText::_('K2_SAVE'); ?>" class="icon-32-save"></span><?php echo JText::_('K2_SAVE'); ?> </a>
                </td>
                <td id="toolbar-cancel" class="button">
                    <a class="toolbar" href="#" > <span title="<?php echo JText::_('K2_CANCEL'); ?>" class="icon-32-cancel"></span> <?php echo JText::_('K2_CLOSE'); ?> </a>
                </td>
            </tr>
        </table>

如果有人有想法指出我正确的方向,我会很感激,因为这个问题,我星期六在这里工作!

1 个答案:

答案 0 :(得分:0)

由于像这样的K2问题,我的工作转为EasyBlog。问题似乎出现在submitForm()函数中。可能有一个$app->setRedirect()没有重定向。

window.parent.location.reload()是超级的。如果您只想刷新页面,只需删除表单return false;中的onclick即可。