4

<input> #image_link での画像選択には、Responsive Filemanager 9 のスタンドアロン バージョンを使用しています。

response_filemanager_callback 関数をどこでどのように使用する必要がありますか?

RFMのドキュメントと以下のコードに記載されているように機能させようとしています。これは、RFM9 で画像を選択した後に < img> #image_preview の src 属性を更新するために必要です。

これは私のコードです:

<input id="image_link" name="link" type="text" value="">
<a class="btn iframe-btn" type="button" href="<?=FILEMANAGER_PATH;?>/dialog.php?type=1&field_id=image_link">Select</a>
<img id="image_preview" src="" />;

<script>
$('.iframe-btn').fancybox({ 
    'width'     : 900,
    'height'    : 600,
    'type'      : 'iframe',
    'autoScale' : false
});

$('#image_link').on('change',function(){
  alert('change triggered');
});

function responsive_filemanager_callback(field_id){ 
    console.log(field_id);
    var url=jQuery('#'+field_id).val();
    alert('update '+field_id+" with "+url); 
    //your code
} 
</script>

$('#image_link')on.('change') 関数は RFM による変更を認識しません。

ご意見をお寄せいただきありがとうございます。

4

5 に答える 5

2

私の解決策は、include.js ファイルを変更することでした。filemanager/js directory.. (or include.min.js.これは、dialog.php 246 行で定義されています)

そのため、include.js ファイルの 500 行目に、function apply_img(file,external)

関数の最後に次の行を追加します。

 if (typeof **parent.**responsive_filemanager_callback == 'function')
    { parent.responsive_filemanager_callback(external);  } 

    }

親。" が最も重要です..iFrameのために必要だと思います..したがって、.responsive_filemanager_callback関数をhtmlドキュメントに追加すると、それが実行されます。

于 2014-11-10T13:04:05.250 に答える
1

問題を解決できました。コードに従ってください:

HTML:

     <input id="image_link" name="link" type="text" value="">
        <a class="btn iframe-btn" type="button" href="<?=$filemanager_path;?>/dialog.php?type=1&field_id=image_link">Select</a>
        <div id="cont-img"><img id="image_preview" src="" style="display:none;" width="303" /></div>

ジャバスクリプト:

        <script>
        function responsive_filemanager_callback(field_id){ 
            console.log(field_id);
            var url=jQuery('#'+field_id).val();
            //alert('update '+field_id+" with "+url); 
            //your code
            $('#image_preview').attr('src',document.getElementById("image_link").value).show();
            parent.$.fancybox.close();
        } 
        </script>

fanybox を使用してポップアップを開閉しました

于 2015-07-15T13:39:09.543 に答える