将多个单击函数与加载事件合并?

时间:2016-01-06 19:41:27

标签: jquery ajax onclick click

我可能是个白痴,但是,可以合并以下内容:

$(function () {
    $("#but1").click(function(){
        $("#RightPanel").load("page1.html");
    });
    $("#but2").click(function(){
        $("#RightPanel").load("page2.html");
    });    
});

我在想if / else语句,但是无法弄清楚如何用load事件来构造它?

1 个答案:

答案 0 :(得分:2)

在按钮上抛出自定义data-*属性,并使用公共类:

<button class="loader" data-page="page1.html">Button 1</button>
<button class="loader" data-page="page2.html">Button 2</button>

和JS:

$(".loader").click(function() {
    var page = $(this).data("page");
    $("#RightPanel").load(page);
});

如果您需要使用if else - 您可以执行以下操作:

$("#but1, #but2").click(function(){
    if (this.id == "but1") {
        $("#RightPanel").load("page1.html");
    } else if (this.id == "but2") {
        $("#RightPanel").load("page2.html");
    }
});