在后退按钮上单击执行功能。

时间:2014-06-13 07:45:54

标签: javascript jquery

document.ready事件中,我有一个收集html控件的函数,该控件具有属性' wordNum'我做了一个AJAX请求,它为每个控件返回一些描述,然后我用返回的描述设置这些控件及其innerhtml属性。

问题是如果用户点击后退按钮,当然这个功能没有被执行但是我需要它。

代码:

$(document).ready(function () {
    Translate();
});
function Translate() {
    var list = new Array();
    $("*[wordNum]").each(function () {
        var endRes = {
            ControllerName: this.id,
            WordNumber: this.getAttribute("wordNum")
        };
        list.push(endRes);
    });
    jQuery.ajax({
        url: ' @Url.Action("Translate")',
        contentType: "application/json",
        dataType: "json",
        data: {
            List: JSON.stringify(list)
        },
        traditional: true,
    }).done(function (data) {
        $.each(data, function (key, val) {
            $("*[wordNum]").each(function () {
                if (this.id == val.ControllerName) {
                    this.innerHTML = val.Description;
                }
            });
        });
    });
}

那么如何点击后退按钮再次执行此功能Translate

1 个答案:

答案 0 :(得分:1)

您可以使用popstate事件来触发事件:

$(window).on("popstate", function (event, state) {
    // Here comes the code to execute when the back button is pressed
}