如何在用户按下按钮后更新ASP Web应用程序文本或标签

How to update ASP Web application Literal or Label after user presses button

本文关键字:Web ASP 应用程序 文本 标签 更新 用户 按钮      更新时间:2023-09-26

警告:我是ASP和javascript的新手,我更习惯于桌面应用程序。Web开发对我来说是全新的。

我继承了一个ASP.net项目,需要随时更新。

我目前的问题是,当用户单击"保存"按钮时,我需要在文本控件(标签或文字控件-不必是其中之一,我只需要以文本形式显示)中显示客户端时间。如果我在服务器端,在"SaveChanges"函数中,我会得到服务器所在的时间

我的按钮定义如下:

<asp:Button ID="Save" runat="server" Text="Save Changes" OnClick="SaveChanges" 
 ValidationGroup="ProjectSummaryValidationGroup" 
 meta:resourcekey="SaveResource1" />

我的文字/标签是:

<asp:Label ID="SaveTime" runat="server"></asp:Label>

我发现了一个javascript函数,可以根据这里的其他问题之一计算客户端时间:(编辑:我已经更新了这个函数,以便为我的标签的文本值分配一个值)

<script type="text/javascript">
  function GetDate(date) {
  CurTime = new Date(date);
  var offset = (new Date().getTimezoneOffset() / 60) * (-1);
  var utc = CurTime.getTime() + (offset * 60000 * (-1));
  var serverDate = new Date(utc + (3600000 * offset));
  var dateString = (serverDate.getMonth() + 1) + "/" + serverDate.getDate() + "/" +
  serverDate.getFullYear() + " " + serverDate.toLocaleTimeString("en-US", { hour12: true });
  document.getElementById('<%=SaveTime.ClientID%>').Text = dateString;
 }
</script>

我的问题是,我不知道把这个javascript函数放在我的apsx页面的哪里,也不知道如何将标签的Text值设置为函数中计算的日期字符串。我甚至不知道如何"调用"这个函数。。。

所以我的问题是:

  1. 我必须在哪里定义javascript函数
  2. 当用户单击"保存"按钮时,我如何"调用"这个javascript函数,以便更新我年龄的文本

您可以使用类似的Java脚本函数

 <script type="text/javascript" language="javascript">
function javascriptFunction()
{
}
</script>

调用此函数如果你使用了更新面板,那么你可以在.Cs中使用页面:

ScriptManager.RegisterStartupScript(this, this.GetType(), Guid.NewGuid().ToString(), "javascriptFunction();", true);

或在.aspx页面点击按钮

<asp:Button ID="Save" runat="server" Text="Save Changes" OnClick="SaveChanges" 
onClientClick="javascriptFunction();"
 ValidationGroup="ProjectSummaryValidationGroup" 
 meta:resourcekey="SaveResource1" />

你可以在.cs页面中使用的其他智慧

ClientScript.RegisterStartupScript
        (GetType(),Guid.NewGuid().ToString(), "javascriptFunction();",true);

在javascript:中设置Label的值

document.getElementById('<%=SaveTime.ClientID%>').value = "Your Date";

用于标签:

void Page_Load(object sender, EventArgs e) 
{
      lblMyLabel.Attributes.Add("onclick",
           "javascript:alert('ALERT ALERT!!!')");
}