输入上的jquery更改/单击事件

时间:2013-03-15 13:24:22

标签: jquery click

我的事件处理程序出了问题。

<input id="menuSelection" type="text" value=""/>

此字段是从带有值的菜单触发的。但我的问题是在jquery代码中的某个地方让这个工作更“活”

hierarchybreadcrumb是menu-id。

$('#hierarchybreadcrumb').click(function(){
var text = $('#menuSelection').val();

$.get('exercise/xhrGetValue', {text:text}, function(o){

});
return false;
});

这个函数得到了结果但是我必须在agen上点击菜单才能使它工作。如何在第一次点击时发送get-method?或者它是否可以在$('#menuSelection')上触发更改的功能?

感谢您的帮助,我希望您能理解我的问题。

1 个答案:

答案 0 :(得分:2)

我希望我能正确理解你。输入不会触发更改事件,除非焦点在焦点(基本意义上)后丢失

要使其“实时”添加包装并使用on

$('mywrapperselector').on('click','#hierarchybreadcrumb',function(){
    var text = $('#menuSelection').val();

    $.get('exercise/xhrGetValue', {text:text}, function(o){
    });
    return false;
});

最坏的情况:

$(document).on('click','#hierarchybreadcrumb',function(){
    var text = $('#menuSelection').val();

    $.get('exercise/xhrGetValue', {text:text}, function(o){
    });
    return false;
});

现在,如果您想触发更改事件,只需执行此操作:

$(document).on('click','#hierarchybreadcrumb',function(){
    var text = $('#menuSelection').val();

    $.get('exercise/xhrGetValue', {text:text}, function(o){
          $('#menuSelection').val('some new value').trigger('change');
          //assume you want it in here
    });
    return false;
});