jquery移动按钮自动刷新页面

时间:2011-12-09 16:35:27

标签: javascript html5 jquery-mobile postback

我使用jquery mobile创建移动网页。我定义了一个按钮和一个onclick事件。执行onclick功能后,我的页面会自动刷新。有谁知道为什么会这样或者我怎么能阻止它?

我的按钮声明:

<button id="rateButton" data-theme="a" data-icon="star" data-iconpos="right" onclick="BtnRatePressed();">Rate</button>

功能:

function BtnRatePressed() {
    var rateBtn = document.getElementById('rateButton');
    rateBtn.style.visibility = 'hidden';
    alert("yeh");

}

我收到提醒,然后页面刷新。

3 个答案:

答案 0 :(得分:2)

我们需要代码才能找到答案。你能以任何方式为我们提供现场演示吗?

您可能忘记在onclick事件结束时返回false。忽略false的返回将使浏览器无论如何都执行链接的href,这可能显示为页面重新加载。

正如我所说,看到实例,将返回false 添加到

您的 BtnRatePressed 功能

function BtnRatePressed()
{
    var rateBtn = document.getElementById('rateButton');
    rateBtn.style.visibility = 'hidden';
    alert("yeh");
    return false;
}

或在onclick声明中。

<button id="rateButton" data-theme="a" data-icon="star" data-iconpos="right" onclick="BtnRatePressed(); return false;">Rate</button>

答案 1 :(得分:2)

return false;添加到BtnRatePressed()的末尾,以便点击甚至不会传播,也不会导致表单提交。

修改:另外,将您的属性更改为onclick="return BtnRatePressed();"

答案 2 :(得分:1)

问题是你正在使用一个实际的按钮,这导致表单动作,你可以通过使用这样的超链接按钮完成同样的事情,并避免问题......

<a href="javascript:BtnRatePressed();" data-role="button" id="rateButton" data-theme="a" data-icon="star" data-iconpos="right">Rate</a>