始终在chrome / firefox中工作的脚本在IE中只能工作一次

时间:2013-12-02 21:21:57

标签: javascript jquery internet-explorer google-chrome

在局部视图中,我有以下几行脚本:

<script type="text/javascript">
    $(document).ready(function() {
        $('#randomCard').click(function () {
            alert("button clicked!");
            $.get("@Url.Action("GetRandomCard")", {}, function (data) {
                $('#rightSide').html(data);
            });
        });
    })
</script>

这会在我的控制器中调用一个Get方法,该方法从数据库中返回一张随机卡。在chrome中,这种方法100%正常工作。 Firefox也会在100%的时间内触发事件。但是在IE中,当警报总是弹出时,动作才会被触发一次。

有人可以帮我找出原因吗?

修改

根据大家的建议,我调试了我的会话,这让我意识到html数据正在被添加,而不是被替换。我创建了一个上部div #rightSide,它可以更新数据,从而解决了这个小问题。

然而,IE调用局部视图控制器方法的问题仍然存在,我感谢大家帮忙解决这个问题。

2 个答案:

答案 0 :(得分:0)

在IE中启动调试器。跑,看看失败了。
如果$ .get(...)出错,请捕获。

(我打赌randomCard-control是一个锚链接,并且有一个微妙的错误让锚点再次获得页面。)

不要忘记发表你的发现。

答案 1 :(得分:0)

即使不是

$(document).ready(function() {
    $('#randomCard').click(function (e) {
        e.preventDefault();
        alert("button clicked!");
 //etc