IE Jquery click()事件触发无法正常工作

时间:2013-09-18 12:43:03

标签: jquery internet-explorer

我正在尝试编写允许用户按Enter键并在输入文本后获取请求结果的内容。以下代码适用于Chrome,但不适用于IE 8和7(我没有尝试过其他版本的IE) 我第一次使用Jquery:

    function ifEnterClick(event) {
    if (event.keyCode == 13) {
        var elm = '#findButton';
        $(elm).click();
    }
}

我也试过javaScript:

function ifEnterClick(event) {
    if (event.keyCode == 13) {
        var obj = document
                .getElementById("findButton");
        fireEvent(obj, 'click');
    }
}
function fireEvent(obj, evt) {

    var fireOnThis = obj;
    if (document.createEvent) {
        var evObj = document.createEvent('MouseEvents');
        evObj.initEvent(evt, true, false);
        fireOnThis.dispatchEvent(evObj);

    } else if (document.createEventObject) {
        var evObj = document.createEventObject();
        fireOnThis.fireEvent('on' + evt, evObj);
    }
}

在这两种情况下,它都适用于Chrome,但不适用于IE。

3 个答案:

答案 0 :(得分:2)

试试这个:

function ifEnterClick(event) {
  var keycode = (window.event) ? event.keyCode : event.which;
  if (event.keyCode == 13) {
    var elm = '#findButton';
    $(elm).click();
  }
}

相关:JavaScript KeyCode Values are "undefined" in Internet Explorer 8

答案 1 :(得分:0)

问题不是点击,它被点燃,或者调用底部的动作。它在通话和提交后。

答案 2 :(得分:-3)

变化

var elm = '#findButton';

var elm = $('#findButton');