1

ファンシーボックス v2.1.5 を使用しました。
これらのファンシーボックスのコンテンツをロードするために使用されるlayout_popupがあります。2 つの fancybox の内容は、CodeIgniter の 2 つのビュー ファイルです。
ステップ 1: ページから、最初のファンシーボックス (タイプ iframe) をポップアップするボタンがあります。
ステップ 2: 最初のファンシーボックスから、2 番目のファンシーボックス (タイプ iframe) をポップアップするリンクがあります。
ステップ 1 を終了しました。
ステップ 2 の実行方法を教えてください。コード layout_popup:

<a id="addmore" class="hand-pointer" onclick="add_more();">Add more product...</a>
<script type="text/javascript">
    function CreateFancyBox(selector, url, width, height) {
        $(selector).fancybox({
            'href': url,
            'titleShow'         : false,
            'titlePosition'     : 'none',
            'openEffect'        : 'none',
            'closeEffect'       : 'none',
            'openSpeed'         : 'fast',
            'type'              : 'iframe',
            'padding'           : 0,
            'preload'           : true,
            'width'             : width,
            'height'            : height,
            'fitToView'         : false,
            'autoSize'          : false,
        }); 
}
    function add_more() {
        var url = base_url + 'ctl_product/add_more_product';
        CreateFancyBox('a#addmore', url, '50%', 205);
    }</script>  

ここから、[製品を追加...] をクリックすると、最初のファンシーボックスがポップアップ表示され、最初のファンシーボックスのコンテンツが (ビュー ファイルから) 表示されます。

<div style="background-color: white;">
    <form id="frmAddMoreProd" method="post" action="">
        <table id="tblAddMoreProd" cellpadding="0" cellspacing="10" width="100%" border="0">
            <tr><th><h3 style="margin-top: 0px;">Add new product</h3></th></tr>
            <tr>
                <td>Fill Product Name</td>
                <td><input class="input-short" style="width: 250px;" type="text" id="prodname" /></td>
            </tr>
            <tr>
                <td></td>
                <td class="t-right">
                    <a href="#" class="cancel">Cancel</a>
                    <a id="add_next" class="b-next hand-pointer">Next</a>
                </td>
            </tr>
        </table>
    </form>
</div>

最初のファンシーボックス内の「次へ」リンクをクリックすると、2番目のファンシーボックスがポップアップ表示されます。コードには、別のビュー ファイルの 2 番目の fancybox のコンテンツが含まれています。そのコードは、最初の fancybox と同じ div 内にあります。

どうすればいいですか?
layout_popup のスクリプトと同じ js スクリプトを最初の fancybox に挿入しようとしましたが、結果が得られません。

4

1 に答える 1

0

iframe で開きたいビューは、実際にはコントローラー内のメソッドです。メソッドを構築することで、最初のステップを取得しました。2 番目の (iframe) ステップでは、別のメソッドを作成し、最初のメソッドから 2 番目のメソッドを呼び出すだけです。わかりやすい方法で言ったことを願っています:D
ここに例があります:

<?php if (!defined('BASEPATH')) die ('No direct script access allowed!');

class Custom extends CI_Controller
{
    function first_method() {
        // my code
        // ...
        // echo the first view file
    }

    function second_method() {
        // my code
        // ...
        // echo the second view file
    }
}
于 2013-07-03T06:12:17.137 に答える