日期:2014-05-18  浏览次数:20514 次

在js中获取隐藏字段对象出错怎么办呢?
我在一个使用了master的aspx页面中放置一个隐藏字段:
    <asp:HiddenField   id= "funMoveParam "   runat= "server "     />


在js中编写一个函数:
function   Movefile()
{
var   obj=document.getElementById( "funMoveParam ");
alert(obj);
obj.value= "li_guang_hua ";
alert(obj.value);
}

可alert(obj);显示为null,不知为何?请高手指教,谢谢!!!

------解决方案--------------------
<asp:HiddenField id= "funMoveParam " runat= "server " />
用 <input type=hidden id= "funMoveParam " value= " ">



------解决方案--------------------
obj是一个对象,所以为null,
你直接alet(obj.value)
------解决方案--------------------
你加个name= "funMoveParam " 试一试
------解决方案--------------------
var obj=document.getElementById( "funMoveParam ");

==============

因为,隐藏域呈现到客户端的 id 已经不是服务器端的 ID ,而是 ClientID

1.
// 假如你这段js代码在 .master 中, 那么

var obj=document.getElementById( ' <% =funMoveParam.ClientID #> ');


2.
// 假如你这段js代码在应用了这个 .master 的 .aspx 中, 那么
// 首先得在 master 中公开这个隐藏域的 ClientID,

// .master.cs

public string FunMoveParamClientID
{
get { return funMoveParam.ClientID; }
}

// .aspx
var obj=document.getElementById( ' <% =((MyMaster)Page.Master).FunMoveParamClientID #> '); // 假设 MyMaster 是你 .master.cs 中的类名


Good Luck!