日期:2014-05-17  浏览次数:20332 次

asp.net父页面 获取并更改 UpdatePanel中iframe中的html页面的 select控件显示值
我想在后台执行javascript代码,实现如题的功能,请问各位高手们该如何写?
下面是我的方法,老老是出错,获取不到id为Room_Name的select控件,请问错在哪里?

protected override void OnPreRender(EventArgs e)
        {
              ScriptManager.RegisterStartupScript(UpdatePanel3, UpdatePanel3.GetType(), "", "if(window.document.frames['WriteReport'].document.getElementById('Room_Name')){//下面for循环的代码……;}", true)      
}



function AutoDisplayModality(){
if (window.document.frames['WriteReport'].document.getElementById('Room_Name')) {
                for (var i = 0; i < modalitys.options.length; i++) {
                    if (modalitys.options[i].text == variable) {
                        modalitys.options[i].selected = true;
                        break;
                    }
                }
            }
}


请各位高手多多指教啊!!!
asp.net javascript html iframe

------解决方案--------------------
你的select控件是服务器控件吗??
document.getElementById('Room_Name.ClientID')

用这样的方式  试试呢
------解决方案--------------------
Room_Name所在的页面设成ClientidMode="static"
------解决方案--------------------
引用:
不是服务器控件,简单的html select控件,请问这种方法可行吗?有没有其他方法解决该问题?用httpHandler  可以吗?


个人觉得既然这里用了html控件  用直接用javascript来处理就行了  jquery来更加方便
LZ是想在页面载入的时候  触发那个javasript函数吗
------解决方案--------------------
优先级的问题

jQuery(document).ready(function(){
    .........在这里面写,应该都可以找到
});
------解决方案--------------------
可以试一下这个
this.Page.ClientScript.RegisterClientScriptBlock
只要在控件之后去执行就可以了