Jquery停止第一次单击按钮执行相同的代码

时间:2014-12-18 22:52:26

标签: javascript jquery

我的问题似乎已经存在,但我无法找到它。提前道歉!!!!

单击多个(唯一)按钮之一后,即使单击其他按钮,所选的初始对应div也会继续执行。

如何停止第一次单击的按钮执行相同的代码?

HTML

<button id="freeButton" type="button">Redeem</button>
<button id="giftCardButton" type="button">Redeem</button>

Jquery的

content[0] = content;
content[1] = other content;

$(freeButton).click(function(){
    if(!visible) {
        $('#items').append(content[0]);
            visible = true;
    } else {
        $('#items').remove(content[0]);
            visible = false;
    }
});

$(giftCardButton).click(function(){
    if(!visible) {
        $('#items').append(content[1]);
            visible = true;
    } else {
        $('#items').remove(content[1]);
            visible = false;
    }
});

1 个答案:

答案 0 :(得分:1)

使用此行$('#items')。remove(content [1]);你要从dom中删除元素并附加你没有替换div的内容,你只是添加它。

你需要使用html()方法。

var content = ["content", "other content"];
visible = false;

$('#freeButton').click(function(){
    if(!visible) {
        $('#items').html(content[0]);
            visible = true;
    } else {
        $('#items').html("");
            visible = false;
    }
});
$('#giftCardButton').click(function(){
    if(!visible) {
        $('#items').html(content[1]);
            visible = true;
    } else {
        $('#items').html("");
            visible = false;
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button id="freeButton" type="button">Redeem1</button>
<button id="giftCardButton" type="button">Redeem2</button>
<div id="items"></div>