当前位置:编程学习 > C#/ASP.NET >>

asp.net无法获取html控件值

这是我的代码,哪位大侠能帮小弟看看什么错误! 马上给分!

aspx页
 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="register.aspx.cs" Inherits="CoolBlog.register"%>

<!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>
<link href="res.css" rel="stylesheet" type="text/css"/>
<script language="javascript" src="res.js" type="text/javascript"></script>     
</head>  
  
<body>
<form method="post" runat="server" action="register.aspx">
<div id="title" class="divclass">
<ul>

<li>
<div class="mat-table"> 
<div><input id="yhmid" name="yhmid" type="text" onfocus='xs_yhm("yhmid","pdwk","jsyhm")' onblur='check_yhm("<%=ExistsYHM()%>","jsyhm","pdyhm")'/></div>
<div id="jsyhm" class="resjs">请输入用户名!</div>
<div id="pdwk" class="resjs">用户名不能为空!</div>
<div id="pdyhm" class="resjs">用户名已存在,请重新输入!</div>
<div><input name="Text1" type="text" id="Text1"/></div>
</div>
</li>

</ul>
</div>
</form>
</body>

</html>

后台C#
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.ComponentModel;

namespace CoolBlog
{
    public partial class register : System.Web.UI.Page
    {
        private readonly coolblog2.BLL.BLLmanager bll = new coolblog2.BLL.BLLmanager();
        protected void Page_Load(object sender, EventArgs e)
        {
        }
           

        public string ExistsYHM()
        {
            string yhm ="333";
            return yhm;
        }
    }
}

js代码
// 用户名显示解释
function xs_yhm(yhmid,pdwk,jsyhm)
{
   var yhid=document.getElementById(yhmid);
   var pdid=document.getElementById(pdwk);
   var jsid=document.getElementById(jsyhm);
   if(yhid.value==""||yhid.value==null)
   {
      jsid.style.display='block';
      pdid.style.display='none';
   }
   else
   {
      jsid.style.display='none';
   }
}

// 判断用户名是否存在
function check_yhm(yhmid,jsyhm,pdyhm)
{
   var pdyid=document.getElementById(pdyhm);
   var jsid=document.getElementById(jsyhm);
   jsid.style.display='none';
   var Text1=document.getElementById("Text1");
   Text1.value=yhmid;

}
--------------------编程问答-------------------- 按照lz的思路,应该是客户端输入用户名,提交给服务器判断是否重名,然后客户端显示。
但是没有这样的逻辑代码。

就算按照lz的思路,既没有判断,js一开始被调用,此时还没有触发服务器端ExistsYHM()。

不是我说lz,实在是得从头好好学学。 --------------------编程问答-------------------- Text1被赋值为“333”。
就这段代码而言,没有问题,但是看不出lz要做什么。 --------------------编程问答--------------------  有点搓, 我估计你根本就不会把? --------------------编程问答-------------------- 给HTML加个runat="server" 后台就能访问到了. --------------------编程问答-------------------- 新建的web技术交流群,欢迎大家加入一起讨论:
群号:29037453 --------------------编程问答-------------------- 后台无法访问到前台的值的。
加个runat=server --------------------编程问答-------------------- 变成服务器控件最简单。。。。。。。 --------------------编程问答-------------------- 楼主在干吗?

想要取值,要么用JS,要么加个服务器标签。。。 --------------------编程问答-------------------- 我也想知道这个问题的解决办法,请问谁可以提供范例代码啊?学习学习! --------------------编程问答-------------------- 加ranat=server就变成服务器控件了 --------------------编程问答-------------------- 转换成服务器控件吧。。。。 --------------------编程问答-------------------- 我想知道,除了加ranat=server,还有别的方法没有?我的页面也想用纯html控件。 --------------------编程问答-------------------- 前台:
html加上name属性,如:<input type='button' name='btnOk' />

后台:
Request.Form['btnOk'].value;
就可以了


--------------------编程问答-------------------- request.form是用form递交过来的数据
Request.Form["ID"]  --------------------编程问答-------------------- 没看懂你的代码。

你要获取哪个html控件的值?
你有提交表单了吗? --------------------编程问答-------------------- 我原来的代码是有一个查找代码的,
public string ExistsYHM()
{
//YHM为用户名
string=Request.Form["yhmid"];
string yhm =bll.getExistsYHM(YHM)

return yhm;
}
但不知道为什么我的Request.Form["yhmid"];读取不到我想要的input id="yhmid"的值。
--------------------编程问答-------------------- 有没有高手帮我指出我的html代码有没有什么错误,我想要纯的html文本,不要runat=server --------------------编程问答--------------------
引用 17 楼 winjohn 的回复:
有没有高手帮我指出我的html代码有没有什么错误,我想要纯的html文本,不要runat=server

#14楼 回答你了 --------------------编程问答-------------------- 但是读取不了啊,我是初学者,又不知道问题出在哪里,所以请大家指点一二! --------------------编程问答-------------------- request.form是用form递交过来的数据
Request.Form["ID"] 
-----------------------------
Request.Form["html控件的Name"]  --------------------编程问答-------------------- Request.["ID"] --------------------编程问答--------------------
引用 16 楼 winjohn 的回复:
我原来的代码是有一个查找代码的,
public string ExistsYHM()
{
//YHM为用户名
string=Request.Form["yhmid"];
string yhm =bll.getExistsYHM(YHM)

return yhm;
}
但不知道为什么我的Request.Form["yhmid"];读取不到我想要的input……


input id="yhmid" 改为 input name="yhmid" --------------------编程问答-------------------- Form["name"]

取name 不要id 

或者request.param["id"] --------------------编程问答--------------------
引用 4 楼 YnSky 的回复:
给HTML加个runat="server" 后台就能访问到了.


或者用服务器控件代替 就省得加上runat="server" 了  --------------------编程问答-------------------- string yhm =Request.Form["yhmid"]  正解

--------------------------------------------------

你加runat='server' 会报错的 --------------------编程问答-------------------- 完全看不懂--
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,