繁体   English   中英

Visual Studio 2012-使用javascript函数

[英]Visual studio 2012- using javascript function

我试图通过javascript函数更改背景。 颜色会变化,但立即返回其原始颜色。 我做错了什么? 谢谢

 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server">
    <title></title>

    <script type="text/javascript">
        function acheck() {
            document.body.style.backgroundColor = "yellow";

        }
    </script> </head>

<body>
    <form id="form1" runat="server">
    <div><p id="p2" >
        <script>  document.body.style.backgroundColor = "blue";

        </script>

         </p>

     <asp:Button ID="Button1" runat="server" OnClientClick="acheck()" Text="Button" />


    </div>

    </form> </body> </html>

更改功能以防止出现默认行为-它将发布表单并重新加载页面。

<script type="text/javascript">
    function acheck(e) 
    {
        document.body.style.backgroundColor = "yellow";
        e.preventDefault();
    } // this bracket also missing in your code
</script>

其他选项是:

e.stopPropagation();
e.stopImmediatePropagation();
return false;

都有不同的目的和结果。

文档位于: https : //developer.mozilla.org/zh-CN/docs/Web/API/Event/preventDefault

嘿,我希望您已经在服务代码中编写了一个事件...如果不只是从按钮中删除服务器属性运行...

我想您是通过在button的server属性上运行来调用某些服务器事件的。 发送回发,导致页面重新加载,使您的页面恢复为旧颜色...

为了避免后发页面刷新,您必须在服务器中很好地处理它,或者只是从按钮中删除此在服务器运行属性(这将导致没有服务器调用您的脚本)。

我希望这可以解决您的问题或帮助您解决问题。

(很抱歉输入错误。从移动应用发送)。

谢谢,我找到了一个简单的解决方案:

<asp:Button ID="Button1" runat="server" OnClientClick="acheck();return false;" Text="Button" />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM