客户端更改Label值的问题

        一天,一个好友问了一个问题说是Button的onclick与OnClientClick事件哪个先哪个后,呵呵,大家别笑啊,我们都是初学者,我想既然是基于浏览器的肯定是客户端的先啦,也不知道这个认为是否正确,但今天要写不是这个问题而是关于Label与TextBox控件的一个问题,如下所示:

.aspx文件
-----------------------------------------------------------------------------------------------------
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="buttonClick.aspx.cs" Inherits="buttonClick" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
    <script language="javascript" type="text/javascript">
        function test()
        {
            document.getElementById("lblMessage").innerHTML="jack";
            //alert(document.getElementById("lblMessage").innerHTML);
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="btnClick" runat="server" Text="Test" OnClick="btnClick_Click" OnClientClick="test()" />
        <br />
        <asp:Label ID="lblMessage" runat="server"></asp:Label></div>
    </form>
</body>
</html>

.cs后台文件
---------------------------------------------------------
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class buttonClick : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            lblMessage.Text = "steven";
        }
    }

    protected void btnClick_Click(object sender, EventArgs e)
    {
        Response.Write(lblMessage.Text);
        btnClick.Text = lblMessage.Text;
    }
}
*** 在点击按钮后先执行客户端事件test()方法,此时Label的值为Jack,而在后台引用时仍为steven,结果显示仍是steven,是什么原因呢,目前还没有想清楚,希望高手指点啊,嘻嘻 ……^_^,但如果把Label换成TextBox控件的话结果显示便为Jack,此中缘由还在追寻,高手指点啦!

 

你可能感兴趣的:(JavaScript,XHTML,server,object,button,textbox)