2011-07-11 17 views
0

MVC JqueryUIフレームワークについてちょうど簡単な質問、MVC&jQueryの複数のビューの複数JqueryUI要素

私はjqueryUIを持つビューを持っているタブ

のセットを初期化し_layout.cshtmlページを持っていますそれにdatepicker。

ビューは動的にタブにロードされて表示されますが、タブのビューの後続のインスタンスをロードすると、datepickerはdatepickerの最初のインスタンスのみを設定します。

私の質問はJQueryUIがそう

をそのベースオブジェクトを作成するために、固有のIDを持つXMLドムを使用しています。この
1. MVCのビューで同じIDを持つ独立したビューを作成するために、独立したオブジェクトを使用しています
2です。これらはどのように一緒に働くはずですか?

<div class="PoCreate"> 
      <div id="pnlProject"> 
       <fieldset> 
        <legend>Project</legend> 
        <label for="ProjectNo"> 
         Project #: 
        </label> 
        <input type="text" name="ProjectNo" id="ProjectNo" /> 
        <input type="button" name="btnProjectNo" id="btnProjectNo" data-linked-search="@Url.Action("Project", "SearchObj")" 
         value=".." /> 
       </fieldset> 
      </div> 
     </div> 
     @Url.Script("~/scripts/PageScripts/_PoIndex.js") 

スクリプトファイルが

$('.PoCreate').PoCreate({}); 

が含まれており、POの機能が

$.fn.extend({ 
    PoCreate: function (opt) 
    { 
     $(this).each(function() 
     { 
      var _self = $(this.parentNode), 
      _opts = {}, tabIdContext = $(this.parentNode).attr('id'); 
      $.extend(_opts, (opt || {})); 

      $('.date', _self).each(function() 
      { 
       $(this).attr('id', tabIdContext + '-' + $(this).attr('id')); 
       $(this).datepicker(Globals.Dates).keypress(function (e) { return false; }); 
      }) 

      $(':button').button().filter('[data-linked-search]').click(function (e) 
      { 
       $.extendedAjax({ url: $(this).attr('data-linked-search'), 
        success: function (response) 
        { 
         $('#dialog-form').find('#dialog-search').html(response).dialog(Globals.Dialogs); 
        } 
       }); 
      }); 
     }); 
    } 
}); 

答えて

0

私は、オン

これを解決する方法を発見したが含まれていますが、次のように私のビューがありますJQueryウィジェットの作成私はDatePickerフィールドのIDをユニークになるように名前を変更する必要がありますタブが作成されます。

ので、私のTabId = UI-タブ-01 とDatePickerId = DatePicker1

それが今あるようにDatePickerIdの名前を変更するUI-タブ-01-DatePicker1

関連する問題