1

WordPress の管理エリアでプラグインをセットアップしています。ユーザーからの情報を保存するフォームがあります。私のファイル入力タイプでは、リンクするカスタム JavaScript への JavaScript 関数呼び出しがあります。これは次の行です: <li>Category Image:<input type="file" name="category[image]" id="cat_image" onchange="javascript:ImageUpload()" /></li>. ただし、 undefined function というエラーが返されますImageUpload()。確かに関数を見つけることができませんでした。私が考えていたのは、これを呼び出すためのワードプレス機能があるのでしょうか、それとも最初に設定する必要があるのでしょうか? しかし、私はすでにカスタム js をリンクしており、機能しています。問題は、管理領域のワードプレス php ファイルから特定の js 関数を呼び出す方法ですか? 皆さんがこれを理解してくれることを願っています。ありがとう。ここに私のコードがあります:

plugin_file.php

 <form method="post" name="new_category" id="product_category" enctype="multipart/form-data"> 
 <ul class="add_prod">
 <li>Category Title:<input type="text" name="category[title]" id="cat_title" value="" placeholder="Title" /> </li>
 <li>Category Description:<textarea rows="4" cols="40" name="category[description]"></textarea></li>
 <li>Category Image:<input type="file" name="category[image]" id="cat_image" onchange="javascript:ImageUpload()" /></li>
 <li><input type="submit" name="submit" id="submit" value="Submit details" class="btn-submit"/></li>
 </ul>  
 </form>

js ファイル:

function ImageUpload() {
    $("#return").show();
    $("#return").html('');
    $("#return").html('<img src="images/load2.gif" alt="Uploading...."/> wait, uploading...');
    $("#imageform").ajaxForm({
        target: '#return',
        success: function() {
            $("#return").fadeOut(10000);
        }
    }).submit();  

}

4

1 に答える 1

1

呼び出される前に js ファイルがロードされていることを確認してください。

このようなことができます

<?php
    add_action('wp_head','js_call'); // make sure js is loaded in head

    function js_call() {  ?>
    <script>

    function ImageUpload() {
        jQuery("#return").show();
        jQuery("#return").html('');
        jQuery("#return").html('<img src="images/load2.gif" alt="Uploading...."/> wait, uploading...');
        jQuery("#imageform").ajaxForm({
            target: '#return',
            success: function() {
                jQuery("#return").fadeOut(10000);
            }
        }).submit(); 


    </script>

<?php    } ?>
于 2013-09-25T04:15:07.763 に答える