2012-05-23 36 views
0

我有一個跨度值,它是異步更新的。所以,我想jQuery聽一個值,如果它等於,讓我們說「測試」我想隱藏另一個html元素。我不知道應該使用什麼事件,因爲.change只對文本框和選擇有效。對jquery中的textchange

+2

的可能重複的[jQuery的:聽一個DIV內的變化和相應的行動(http://stackoverflow.com/questions/2712124/jquery-listen-to-changes-within- a-div-and-act) – j08691

+2

爲什麼不放置檢查span的值並在設置span值的代碼中隱藏html元素的邏輯? –

+0

什麼導致跨度更新? –

回答

0

你能訪問異步更新值的方法的回調函數嗎?如果是這樣,你可以在那裏放置一個條件/監聽器來分析響應。這樣的事情:

$.ajax({ 
    success: function(responseData) { 
     if(responseData.specificKeyValue == 'test') { 
      $('element to hide').hide(); 
     } 
    } 
}); 
0

我會做下面的事情。當您更新跨度時,基本上會觸發自定義事件。

注意:下面是一個演示代碼,試圖獲得相應的想法和實現。

$(function() { 
    var $result = $('#result'); 
    setInterval(function() { 
     $result.append('Span Updated').trigger('spanChange'); 
    }, 1000); 

    $result.on('spanChange', function() { 
     //your custom span change listener 
     console.log('Span got updated'); 
    }); 
}); 

DEMO

+0

由於settimeout,此代碼僅觸發每秒。我怎樣才能讓它觸發在div內更改的文本? – user194076

+0

你如何改變div內的文字?每當您更改div內的文本時,只需添加一個類似'.trigger('spanChange')'的觸發器。 –

+0

它由telerik控件完成。這是我原來的問題,但仍然無法找到解決方案,所以我想我可以試着用jquery隱藏它:http://www.telerik.com/community/forums/aspnet-ajax/upload/hide-radprogressarea-after-response -end.aspx – user194076

相關問題