首页 > 解决方案 > Javascript 函数返回 false 但它不会阻止回发

问题描述

我有一个 ASP.NET 网站,用户在其中打开 ImageButton Web 控件中的图像。然后他们可以点击图像按钮,客户端函数将计算点击对之间的“真实”距离。客户端 javascript 函数由 asp:ImageButton 的 OnClientClick 参数引用。当只有 numClick++ 时,该函数实际上无需回发即可工作;和 document.getElementID("labelcount").innerText = numClick; 被执行,但是当整个函数被写出时,一个 postbakc 不断发生。我该如何解决这个问题?这是JavaScript代码:

var pos1x = 0, pos1y = 0;
var pos2x = 0, pos2y = 0;
var total = 0;
var distx = 0; disty = 0;
var redistx = 0, redisty = 0, newdist = 0;
var numClick = 0;
function Image_Click() {
        numClick++;
        document.getElementById("labelcount").innerText = numClick;
        if (numClick % 2 == 1)
        {
            pos1x = event.pageX;
            pos1y = event.pageY;

        }
        else if (numClick % 2 == 0)
        {
            pos2x = event.pageX;
            pos2y = event.pageY;
            distx = Math.abs(pos2x - pos1x);
            disty = Math.abs(pos2y - pos1y);
            redistx = Math.ceil(distx/50);
            redisty = Math.ceil(disty / 50);

            newdist = Math.ceil(Math.sqrt(redistx * redistx + redisty * redisty));
            document.getElementById("lengthlabel").innerText = newdist;
            total += newdist;
            document.getElementById("labeltotal").innerText = total;
       }
       return false;
   }

这是 ImageButton 的 .aspx

<asp:ImageButton ID="pic" runat="server" ImageAlign="Left" ImageUrl="~/MemberPages/447298.jpg" OnClientClick="return Image_Click();" />

标签: javascriptasp.netclick

解决方案


推荐阅读