javascript textbox_changed value
本文关键字:value changed textbox javascript | 更新日期: 2023-09-27 18:08:54
这是我的ASPX代码
<%@ Page Title="About Us" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="About.aspx.cs" Inherits="About" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script language="javascript" type="text/javascript">
function sum(t1)
{
var txt1 = document.getElementById('MainContent_TextBox2').value;
var result = parseInt(txt1) / 2;
var result1 = parseInt(result);
if (!isNaN(result))
{
document.getElementById(t1).value = result1;
}
}
</script>
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<asp:TextBox ID="TextBox2" runat="server" onkeyup="sum('MainContent_TextBox3')"</asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server" ReadOnly="True"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click"/>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
我的c#代码是
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class About : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
TextBox4.Text = TextBox3.Text;
}
}
问题是,当我点击按钮1时,没有错误,TextBox4为空,我希望当我点击选项1时,textbox3的值在TextBox4中传输。
这是因为您在TextBox3
上设置了ReadOnly="True"
。
当控件在ASP.NET中设置为ReadOnly
时,原始呈现页面时放置在控件中的值将不会更新。
即使您在浏览器上更改控件中的值(就像您正在做的那样(,发送回服务器的值也不会影响TextBox控件中的数值——由于ViewState
,它将保持原来的值。
答案是将新值存储在<asp:HiddenField>
中,您应该在TextBox3
的同时更新该值。
然后在服务器上使用隐藏字段中的值,因为它将包含您想要的值。(另外,请记住,作为回发的一部分,您需要从隐藏控件更新文本框中的值(。