0

我想防止在单击按钮时重新加载页面。单击时,我只想交换按钮值而不刷新页面。我该怎么做?

<button id="4">134</button> // button 1 
<button id="5">234</button> // button 2 

单击按钮 1(ID 为“4”的按钮)后,我想要以下结果

// After clicking button 1
<button id="4">234</button> // button 1
<button id="5">134</button> // button 2 

如何在不重新加载/刷新 html 页面的情况下做到这一点。

4

3 回答 3

6

为了防止刷新,只需添加 type="button"

<button id="4" type="button">134</button> 
<button id="5" type="button">234</button>

至于交换值,我重申 bmargulies,你需要学习 javascript,或者让你的问题更清楚,这样我们才能给你一个更好的答案。

但是对于您的模糊问题(说明单击#4 后文本应该交换)这里是使用 jQuery 的一些方向。这样做只会交换一次。

<script type="text/javascript">
    $(function(){
        $('#4').click(function(){
            $(this).html(234);
            $('#5').html(134);
        });
    });
</script>

有关 jQuery 的帮助:http: //api.jquery.com/

于 2012-12-28T16:26:20.030 回答
2

你问了一个非常广泛的问题,它根本与 HTML5 无关。要获得此功能,您必须将 javascript 处理程序附加到您的按钮。有许多不同的 javascript 库可以帮助您解决这个问题,或者您可以编写原始 javascript。

你将不得不去做很多关于 javascript 编码的基本学习来完成这个。

于 2012-12-28T16:23:20.217 回答
0

UpHelix 的回答解决了您页面重新加载的主要问题。许多浏览器上按钮的默认类型已重置,这会导致重新加载页面,如问题的答案中所述如何使 html 按钮不重新加载页面?

关于您的价值交换任务,我的代码为您完成了工作

$(function() {
        $('button#4').click(function() {
            var firstButtonVal = $('button#4').text();
            var secondButtonVal = $('button#5').text();
            $('button#4').text(secondButtonVal);
            $('button#5').text(firstButtonVal);
        });
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button id="4" type="button">134</button>
<button id="5" type="button">234</button>

于 2014-12-16T15:44:04.940 回答