2017-09-14 43 views
0

我有以下幾點:檢測在跨度的文本中的更改

$(document).ready(function(){ 
    var span = $('#multiple_group_select_chosen span:first'); 
    span.on('DOMSubtreeModified', function(){ 
    console.log('bla'); 
    if (['No groups in this year', '', 'Now please select a group', 'Please select a'].includes(span.text())) { 
     $('#classes').disabled = true; 
    } else { 
     $('#classes').disabled = false; 
    } 
    }); 
}); 

當我打電話

$('#multiple_group_select_chosen span:first').text() 

從它返回從下拉列表中選擇的值的控制檯,這個變化下拉選擇更改。如何檢測這種情況何時發生?目前沒有發生'bla'的console.log ...

在此先感謝。

編輯:HTML

<div class="chosen-container chosen-container-single chosen-container-single-nosearch" style="width: 100%;" title="" id="multiple_group_select_chosen"> 
    <a class="chosen-single"> 
    <span>DROPDOWN TEXT</span> 
    <div><b></b></div> 
    </a> 
</div> 

我沒有過太多的控制這個網站是如何走出

+1

讓我們看看一些標記。什麼是'#multiple_group_select_chosen'? –

回答

0

我可能是錯的,但有可能在這裏是一個非常簡單的解決方案。而不是採取span作爲一個變種,然後on事件處理程序綁定到該變量,嘗試事件直接綁定到的節點像$('#multiple_group_select_chosen span:first').on('event', function() { ... });

通過元素分配給你可能會找上「拯救」事件版本的變量的元素,而不是頁面上的實際DOM元素。有更多知識的人可能可以驗證這一點。

+0

我試過改變跨度到$('#)objeets沒有喜悅 – Mark

+0

好吧,在這種情況下,這是一個類似的問題,提出了一段時間後,也許你可以找到一些有用的東西:[鏈接](https: //stackoverflow.com/questions/10958529/jquery-how-to-handle-change-text-of-span) –