有个页面body1.aspx 在后台body1.aspx.cs文件里写了一些动态的文本框是客户端控件,能二十多个
我想问一下,我怎么把这个文体控件的值取出来计算?想在前台计算,因为不刷新页面,就是光标离开某个文体框
之后,就要计算一下,AJAX我不太会用

解决方案 »

  1.   

    动态创建的textbox也就是输出,呈现HTML格式在客户段,脚本获取值计算即可
    <!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>
        <title>无标题页</title>
        <script language="javascript" type="text/javascript">
            var allinput = function(){
                var all = document.getElementsByName("input_text");
                var num = 0;
                for(i=0;i<all.length;i++){
                    num = parseInt(num) + parseInt(all[i].value);                
                }
                alert(num)
            }
        </script>
    </head>
    <body>
        <input id="Text1" name="input_text" type="text" />
        <input id="Text2" name="input_text" type="text" />
        <input id="Text3" name="input_text" type="text" />
        <input id="Text4" name="input_text" type="text" />
        <input id="Text5" name="input_text" type="text" />
        <input id="Text6" name="input_text" type="text" />
        <input id="Button1" type="button" onclick="allinput()" value="button" />
    </body>
    </html>
      

  2.   

    改写一下ls 的<%@ Page Language="C#" AutoEventWireup="true" CodeFile="temp.aspx.cs" Inherits="temp" %><!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 sum()
            {        
                var el = document.getElementsByName("input_text");
                var sum = 0;
                for(i=0;i<el.length;i++)
                {            
                    sum += parseInt(el[i].value);                             
                }
                document.getElementById('txtSum').value=sum;
            }       
            
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
        <input type="text" name="input_text"  value="1" onblur="sum();"/>    
        <input type="text" name="input_text" value="2" onblur="sum();"/>    
        <input type="text" name="input_text" value="3" onblur="sum();"/>    
        <input type="text" name="input_text" value="4" onblur="sum();"/>    
        <input type="text" id='txtSum'  />    
        <asp:Literal ID="lit" runat="server"></asp:Literal>
        </div>
        </form>
    </body>
    </html>
    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 temp : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            HtmlInputText hit = new HtmlInputText();
            hit.ID = "input_text";
            hit.Attributes.Add("onblur", "sum();");        
            hit.Value = "11";
            Page.Controls.Add(hit);
            string htmlStr = "<input type='text' name='input_text'  value='21' onblur='sum();'/>";
            lit.Text = htmlStr;
            htmlStr = "<input type='text' name='input_text'  value='31' onblur='sum();'/>";
            ClientScript.RegisterStartupScript(GetType(),"htmlStr",htmlStr);
            htmlStr = "<input type='text' name='input_text'  value='41' onblur='sum();'/>";
            ClientScript.RegisterClientScriptBlock(GetType(), "htmlStr", htmlStr);
        }
    }