如何捕获Label控件的Text属性的更改?

时间:2012-09-04 17:27:39

标签: c# asp.net

我正在寻找类似于TextBox控件的OnTextChanged属性的东西。因此,当标签的Text值发生变化时,会调用一个特定的函数来完成我的特定工作人员。

标记

 <asp:TextBox ID="TextBox2"   runat="server"></asp:TextBox>

    <asp:Label ID="Label1" runat="server"  Text="Label"></asp:Label>

    <asp:SliderExtender ID="SliderExtender1"  TargetControlID="TextBox2"  BoundControlID="Label1" Maximum="200" Minimum="100" runat="server">
    </asp:SliderExtender>

2 个答案:

答案 0 :(得分:2)

改为处理滑块的相应OnChange事件。标签文本可以更改的唯一方法是代码更改它。

修改

嗯。您可以尝试将滑块绑定到不可见的asp:TextBox,然后使用OnChange事件来更新Label并调用您的函数。

答案 1 :(得分:0)

观察'input'事件而不是'change'

jQuery('#textboxid').live('input', function() {
    // do your stuff
})

或 对于使用'change'事件

的滑块
$('#sliderid').live('change', function() {
     $('#textboxid').val('some text').trigger('change');
});

可能是这种方式而不是改变事件。 ('change'事件无效,但'input'非常完美。)

$('#your_textbox').bind('input', function() {
    /* This will be fired every time, when textbox's value changes. */
});

此jQuery代码捕获对任何元素的即时更改,

$('.myElements').each(function() {
    // Save current value of element
    $(this).data('oldVal', $(this).val());

    // Look for changes in the value
    $(this).bind("propertychange keyup input paste", function(event){
    // If value has changed...
        if ($(this).data('oldVal') != $(this).val()) {
            // Updated stored value
            $(this).data('oldVal', $(this).val());

            // Do action
            ....
        }
    });
});

phatmann