0

jquery ポップアップ ボックスである Messi を使用して、php アプリケーションを開発しています: http://marcosesperon.es/apps/messi/

私のアプリケーションには、編集可能にしようとしている価格表があります。ボタンをクリックするとメッシ ポップアップ ボックスが表示され、いくつかのオプションを選択してデータを入力すると、テーブルに追加されます。

ボタンをクリックすると、messi ポップアップ ボックスが表示され、ユーザーがさまざまなオプションを選択できる選択ボックスが表示される段階になりました。

次のようにコードします。

function new_header()
{
    var content = "<form class='format_form' action='add_category.php' method='POST'>
                       <fieldset>
                           <legend>Choose a Pricing Category</legend>

                           <ol>
                               <li>
                                   <label for='category'>Category</label>

                                   <select id='category' name='category'>
                                       <option value='short_break'>Short Break</option>
                                       <option value='nightly_rate'>Nightly Rate</option>
                                       <option value='percentage_off'>Percentage Off</option>
                                       <option value='free_nights'>Free Nights</option>
                                   </select>
                               </li>
                           </ol>
                       </fieldset>

                       <fieldset>
                           <button type='submit' name='add_category' onclick='return validate_form();' id='add_category'>Add the Pricing Category</button>
                       </fieldset>
                   </form>";

    new Messi(content, {title: "Add a New Pricing Category", modal: true, width: '650px'});
}

表には、messi ポップアップ ボックスを表示するためのクリック可能な画像があり、次のようにコーディングします。

<th scope="col" class="rounded-topright">
    <img class='hover_off' src='../../../includes/images/table/add_header.png' width='25px' height='25px'>

    <a href='#' onclick='new_header()'>
        <img class='hover_on' src='../../../includes/images/table/add_header_hover.png' width='25px' height='25px'>
    </a>
</th>

メッシ ポップアップ ボックスに表示されるコンテンツは、選択ボックスでのユーザーの選択によって異なります。テストとして、次のように、選択ボックスのオプションが変更されたときに、システムに javascript アラートを表示させようとしています。

$(document).ready(function()
{ 
    var category_number;

    $("#category").change(function()    //When the category is changed
    { 
        category_number = document.getElementById('category').selectedIndex;        //Get the property location in the array

        alert(category_number);
    }); 
}); 

このコードを、他のすべての JavaScript が入っている .js ファイルに最初に入れてみました。それが機能しない場合は、元の価格スケジュール表を含む .php ファイルに入れましたが、それでも機能しませんでした動作しません。

誰でも助けることができますか?または、それに失敗した場合、同じことを達成するためのより良い方法を考え出しますか?

4

2 に答える 2

0

以下を追加して問題を修正しました。

onchange='category_change(this)' 

選択ボックスの属性に入力し、選択したオプションを処理する関数category_change()を作成します。

于 2013-03-28T15:30:15.217 に答える
0

追加してみてください:

var category_number;

$("#category").change(function()    //When the category is changed
{ 
    category_number = document.getElementById('category').selectedIndex;        //Get the property location in the array

    alert(category_number);
}); 

var content、messiポップアップで両方を起動します

于 2013-03-28T15:30:57.683 に答える