2

私のモバイル Web サイトには、いくつかの複数選択コントロールがあります。項目数が少ない (5) 複数選択は通常、複数選択 (モバイル スタイル/フォーマット) のように表示されますが、項目が 5 つを超える複数選択は、ダイアログ ビューのように新しいページに表示されます。何らかの理由で、X ボタンが反応せず、colse 効果がありません。X ボタンを機能させるにはどうすればよいですか? 複数選択コード:

<div class="field ">
        <label for="offices" class="select">
            Office(s):
        </label>
        @Html.ListBoxFor(m => m.Offices, Model.ListOfOffices, new { Multiple = "multiple", data_theme = "a", data_overlay_theme = "c", inline = "true", data_native_menu = "false" })
 </div> 

jqueryコード:

$(".ui-icon-delete").click(function () {
  //$('.ui-dialog').hide(); no effect
  //$('div[data-role="dialog"]').popup("close"); no effect
  //$('div[data-role="dialog"]').dialog("close"); no effect
  //$('ui-dialog').dialog('close'); no effect
  $(this).parent().remove(); // this one close the dialog, but also remove the X button
  });

ありがとう!

4

2 に答える 2

0

ダイアログには ID が関連付けられている必要があります。ダイアログが正しく開始されたことを考慮すると、次のことができるはずです。

<div id="dialog">
    <label for="offices" class="select">
        Office(s):
    </label>
    @Html.ListBoxFor(m => m.Offices, Model.ListOfOffices, new { Multiple = "multiple",  data_theme = "a", data_overlay_theme = "c", inline = "true", data_native_menu = "false" })
</div>

閉じるには:

$(".ui-icon-delete").click(function () {
   $('#dialog').dialog('close');
}
于 2013-02-13T11:34:50.800 に答える
0
$("[class=field]").css({ "display" : "none" });

のプロパティを追加することにより、jQueryを使用.css()してその要素/ノードを非表示にしますdisplay:none

それは何をしますか?

その要素/ノードを現在の HTML ツリーから非表示にしますが、削除しません。

于 2013-02-13T11:40:18.230 に答える