Jquery .live()事件不适用于Firefox和IE

时间:2012-07-17 19:22:42

标签: internet-explorer firefox jquery

我有提交的直播活动并点击:

<form class='myform'>
    <input type='text' name='fruit'>
</form>
<a href='#' class='formSubmit'>Submit</a>

我有jquery调用表单通过Enter提交或点击标签

$('a.formSubmit').live('click', function(){
    $('form.myform').submit();

    return false;
});

$('form.myform').live('submit', function(){
    //conditional statements here
});

所以问题是,我的jquery脚本在除IE和FireFox之外的所有浏览器上都能正常工作。似乎.live()方法是原因。因为当我删除live()方法并执行它只需单击()方法它将工作。现在我需要在live()方法上执行它因为我将具有新附加元素和表单的功能。有没有办法让它在Firefox和IE上运行?

谢谢!

2 个答案:

答案 0 :(得分:1)

http://api.jquery.com/on/

$('#not_dynamically_generated_parent').on('click','a.formSubmit', function(){
    $('form.myform').submit();

    return false;
});

$('#not_dynamically_generated_parent').on('submit','form.myform', function(){
    //conditional statements here
});

答案 1 :(得分:0)

哈,我找到了解决方案。我的嫌疑人完全错了。 jquery live()方法工作正常,唯一让脚本无效的是这个event.preventDefault();如果你在事件方法中有类似的东西,它不会在firefox上工作,即...感谢贡献的人。