asp.net 子页面使用js给ReadOnly的TextBox赋值

10 篇文章 0 订阅
4 篇文章 0 订阅

主页面

前台代码:

<head runat="server">
    <title>js给只读文本框赋值</title>
    <script type="text/javascript" >      
	function GetInfo()
    {          
          document.getElementById('Button1').click();      
     }     
     //禁用Enter键表单自动提交    
        document.onkeydown = function(event) 
        {    
            var target, code, tag;    
            if (!event) 
            {    
                event = window.event; //针对ie浏览器    
                target = event.srcElement;    
                code = event.keyCode;    
                if (code == 13) 
                {    
                    tag = target.tagName;    
                    if (tag == "TEXTAREA") { return true; }    
                     else { return false; }    
                }    
            }    
            else 
            {    
                target = event.target; //针对遵循w3c标准的浏览器,如Firefox    
                code = event.keyCode;    
                if (code == 13)
                {    
                    tag = target.tagName;    
                    if (tag == "INPUT") { return false; }    
                    else { return true; }     
                }    
            }    
        }; 
    </script>	    
    <base target="_self"  />
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <table >
            <tr>
                <td align ="right" style ="width :10%">
                    <asp:Label ID ="Label1" runat ="server" Text ="文本框:"></asp:Label>                
                </td>
                <td>
                    <asp:TextBox ID ="TextBox1" runat ="server" οnkeydοwn="if(event.which || event.keyCode){if ((event.which == 13) || (event.keyCode == 13) || (event.which == 9) || (event.keyCode == 9)) {GetInfo();return false;}} else {return true};"></asp:TextBox>
                    <asp:Button ID="Button1" runat ="server" Text ="打开子页面" />
                </td>
            </tr>
            <tr>
                <td align ="right" style ="width :10%">
                    <asp:Label ID ="Label2" runat ="server" Text ="显示结果文本框:"></asp:Label>                
                </td>
                <td>
                    <asp:TextBox ID ="TextBox2" runat ="server"></asp:TextBox>        
                </td>                
            </tr>
            <tr>
                <td align ="right" style ="width :10%">
                    <asp:Label ID ="Label3" runat ="server" Text ="ReadOnly文本框:"></asp:Label>                
                </td>
                <td>
                    <asp:TextBox ID ="TextBox3" runat ="server"></asp:TextBox>        
                </td>                
            </tr>
        </table>  
    </div>
    </form>
</body>

后台代码

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then

            Me.TextBox2.Text = ""

            Me.TextBox3.Text = ""
            Me.TextBox3.BackColor = Drawing.Color.LightGray
            Me.TextBox3.Attributes.Add("readonly", "readonly")
        End If
    End Sub

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim script As New StringBuilder
        Try
            script.Append("var myValue")
            script.Append("=window.showModalDialog('tb01_01_1.aspx?Key=" + Me.TextBox1.Text + "','','dialogWidth=750px;dialogHeight=400px;');")
            script.Append("if(myValue!='' &&  myValue!=undefined)")
            script.Append("{")

            script.Append("document.getElementById('" + Me.TextBox2.ClientID + "').value=myValue.split('^')[0];")

            script.Append("document.getElementById('" + Me.TextBox3.ClientID + "').value=myValue.split('^')[1];")

            script.Append("}")

            Page.ClientScript.RegisterStartupScript(Me.GetType, "msg", "<script language='javascript'>" + script.ToString + "</script>")

        Catch ex As Exception

        End Try

    End Sub


子页面

前台代码

<head runat="server">
    <title>无标题页</title>
    
    <base target="_self"  />
</head>
<body>
    <form id="form1" runat="server">
    <div>        
        <table >
            <tr>
                <td align ="right" style ="width :10%">
                    <asp:Label ID ="Label1" runat ="server" Text ="传入值:"></asp:Label>                
                </td>
                <td>
                    <asp:TextBox ID ="TextBox1" runat ="server" ></asp:TextBox>                    
                </td>
            </tr>
            <tr>
                <td align ="right" style ="width :10%">
                    <asp:Label ID ="Label2" runat ="server" Text ="返回值1:"></asp:Label>                
                </td>
                <td>
                    <asp:TextBox ID ="TextBox2" runat ="server"></asp:TextBox>        
                </td>            
            </tr>  
            <tr>
                <td align ="right" style ="width :10%">
                    <asp:Label ID ="Label3" runat ="server" Text ="返回值2:"></asp:Label>                
                </td>
                <td>
                    <asp:TextBox ID ="TextBox3" runat ="server" ></asp:TextBox>                    
                </td>
            </tr>
            <tr>
                <td colspan ="2">
                    <asp:Button ID="Button1" runat ="server" Text ="返回" />
                </td>
            </tr>      
        </table>
    </div>
    </form>
</body>

后台代码

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then
            Me.TextBox1.Text = Request.QueryString("Key").ToString
        End If
    End Sub

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim returnValue As New StringBuilder

        returnValue.Append(Me.TextBox2.Text.Replace(" ", ""))
        returnValue.Append("^")
        returnValue.Append(Me.TextBox3.Text.Replace(" ", ""))

        Me.Page.ClientScript.RegisterStartupScript(Me.GetType, "msg", "<script language='javascript'>window.returnValue='" + returnValue.ToString + "';window.opener=null;window.close();</script>")

    End Sub

页面效果图



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值