2016-12-27 70 views
1

我盡力去完成,當是這個樣子我的網頁數模態的一個函數被調用:jQuery的自舉模式的不工作

$('.modal') 
.on('shown.bs.modal', 
function (e) { 
    var id = $(this).attr('id'); 
}); 

但功能沒有被調用。

它的工作是這樣的:

$(window) 
.on('shown.bs.modal', 
function (e) { 
    var id = $(this).attr('id'); 
}); 

但有了這個辦法,我不能得到的元素的ID。

我該如何做到這一點,我定義了一個函數,當幾個模態中的一個被顯示,模態的右元素被轉換爲參數,所以我可以確定模態元素的ID?

更新: 我想我找到了我的問題的原因。我嘗試在我的angularjs控制器中運行這個jQuery代碼。

UPDATE2: 我想按照我的角度控制器代碼運行,但它永遠不會被調用:

$document.ready(function() { 
      jQuery('.modal') 
      .on('shown.bs.modal', 
       function (e) { 
        var id = $(this).attr('id'); 
        NgMap.getMap("map-" + id) 
         .then(function (map) { 
          google.maps.event.trigger(map, 'resize'); 
         }); 
       }); 
     }); 
+0

你可以給這個問題一個工作plunker?當我試圖產生的問題,我不能。另外,你可以顯示你的HTML代碼嗎? –

+0

我用ng-repeat在我的html代碼中創建模態。我將舉例 – Palmi

+0

您提供的代碼應該可以工作,如果您還沒有找到解決方案,請提供更多信息 – Mese

回答

0

我認爲你應該使用模式,而不是類

$('#modal-ID') .on('shown.bs.modal', function (e) { var id = $(this).attr('id'); }); 
+0

用戶正在嘗試使用此功能查找模式的「id」。如果他/她已經知道'id'爲什麼他/她會使用這個'function'? –

0

室溫下將標識是指定一個不同的類別,然後在其上觸發事件

like

HTML

<button type="button" data-toggle="modal" data-target="#imageUpload2">Launch modal</button> 
<button type="button" data-toggle="modal" data-target="#imageUpload1">Launch modal</button> 
<div class="sample modal fade" id="imageUpload2" tabindex="-1"> 
    <div class="modal-dialog"> 
     <div class="modal-content"> 
      Upload form here 
     </div><!-- /.modal-content --> 
    </div><!-- /.modal-dialog --> 
</div> 
<div class="sample modal fade" id="imageUpload1" tabindex="-1"> 
    <div class="modal-dialog"> 
     <div class="modal-content"> 
      Upload form here 
     </div><!-- /.modal-content --> 
    </div><!-- /.modal-dialog --> 
</div> 

jQuery的

$(function(){ 

    $('.sample').on('show.bs.modal', function() { 
     alert($(this).attr('id')); 
    }); 
}); 

Jsfiddle