如果必须用asp.net的组件<asp:TextBox...>,那么函数的调用应该怎么写?
23 个解决方案
#1
按理是正确的. 除非你是用的自定义用户控件.也就是后缀名为ascx的页面... 在JS中就不能直接使用页面显示的那个ID名了.
#2
js只与客户端的表单控件有关。
服务器控件最好都会转化成客户端控件。
分析js错误只管生成的HTML代码就行了。
服务器控件最好都会转化成客户端控件。
分析js错误只管生成的HTML代码就行了。
#3
服务器控件最
后都会转化成客户端控件。
#4
属性:runat="server"
#5
最简单的办法是,运行出来看源文件,找到<asp:TextBox....>生成的<input type=text> 看看ID是什么,然后你再document.all.生成后的ID肯定没错
#6
<asp:TextBox...>是服务器控件
<input type=text...>是客户端控件
在JS里调用没必要用服务器控件
<input type=text...>是客户端控件
在JS里调用没必要用服务器控件
#7
<asp:TextBox id="TextBox1" runat="server'></asp:TextBox>
js:
combobox('<%=TextBox1.ClientID%>',lav,lat)
js:
combobox('<%=TextBox1.ClientID%>',lav,lat)
#8
看一下运行之后的HTML代码你就知道区别了.
#9
document.getElementById('textid.ClientID')
#10
combobox(document.all.<%=textid.clientId%>,lav,lat)
#11
wht6411
顶了
顶了
#12
<asp:TextBox....>这种写法是你添加了一个asp.net的组件TestBox,<input type=text ...>这种写法是你添加了一个客户端的控件,<input>是Html的标记,你写的函数是在客户端找textid,所以<input type=text ...>这种写法就完全正确。
#13
12楼说的对,确实是js函数的问题,其他楼的方法我都试了,不管用。html运行后的代码完全一样,没区别。
不知在js函数里怎么找服务器端的textid?
不知在js函数里怎么找服务器端的textid?
#14
这是我的js代码
<!--Combobox-->
function combobox(sobj,al_v,al_t)
{
var rmopo = window.createPopup();
function rm(i,oct,h)
{
var i2=eval(i);
var oct=eval(oct);
var w=eval(i).offsetWidth;
var h=eval(h);
var lefter = i2.offsetLeft-1; var topper = i2.offsetHeight;
rmopo.document.body.innerHTML = oct.innerHTML;
rmopo.document.body.style.border="1px solid #3162A6";
rmopo.document.body.style.background="#F6F6F6";
rmopo.show(lefter, topper, w, h, i2);
}
loadcombobox(sobj,al_v,al_t);
function loadcombobox(obj,al_v,al_t)
{
var obj = eval(obj)
theListArrayV = al_v;
theListArrayT = al_t;
var tempStr='<DIV id="'+obj.id+'showcombox" style="position:relative;visibility:hidden">'
+'<DIV class="ac_menu" id="'+obj.id+'ListDiv" style="FONT-SIZE: 12px; Z-INDEX: 10; POSITION: absolute;OVERFLOW-Y:auto; WIDTH:expression('+obj.offsetWidth+'-1);">'
for(var i=0;i<theListArrayV.length;i++)
tempStr+='<DIV class="ac_menuitem" onmouseover="this.style.backgroundColor=\'#D6DEEC\';" onmouseout="this.style.backgroundColor=\'\';" onclick="this.selectedflag=1;parent.document.all.'+obj.id+'.value=this.value;parent.document.all.'+obj.id+'.blur();" style="cursor:default;" value="'+htmlEncode(theListArrayV[i])+'" textvalue="'+htmlEncode(theListArrayT[i])+'">'+htmlEncode(theListArrayT[i])+'</DIV>';
tempStr+='</DIV></DIV>';
obj.insertAdjacentHTML("afterEnd",tempStr);
obj.onfocus=AC_OnFocus;
obj.onclick=AC_OnFocus;
obj.onblur=AC_OnBlur;
obj.onkeydown=AC_OnKeyDown;
obj.autoComplete="off";
obj.onpropertychange=AC_OnPropertyChange;
}
function AC_OnFocus(obj)
{
if(obj==null) obj=event.srcElement;
popmenu=eval(obj.id+"showcombox");
rm(obj,popmenu,130);
AC_OnPropertyChange(obj);
}
function AC_OnBlur(obj)
{
rmopo.hide();
}
function AC_OnPropertyChange(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var theListDivChildren=theListDiv.children;
theListDiv.selectedIndex=-1;
var theFirstVisibleIndex=-1;
var objValue=obj.value;
for(var i=0;i<theListDivChildren.length;i++)
{
if(theListDiv.children[i].textvalue.indexOf(objValue)==0)
{
if(theFirstVisibleIndex==-1) theFirstVisibleIndex=i;
theListDivChildren[i].style.backgroundColor="#F6F6F6";
theListDivChildren[i].style.display="";
}
else
theListDivChildren[i].style.display="none";
if(theListDiv.selectedIndex==-1 && theListDiv.children[i].textvalue==objValue)
{
theListDiv.selectedIndex=i;
}
}
if(theListDiv.selectedIndex==-1 && theFirstVisibleIndex!=-1)
{
theListDiv.selectedIndex=theFirstVisibleIndex;
}
if(theListDiv.selectedIndex!=-1)
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
}
adjustListDivScroll(obj);
}
function AC_OnKeyDown(obj)
{
if(obj==null) obj=event.srcElement;
var AC_TAB = 9;
var AC_ENTER = 13;
var AC_UP_ARROW = 38;
var AC_DOWN_ARROW = 40;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var keyCode=event.keyCode;
if(keyCode==AC_ENTER) keyCode=event.keyCode=AC_TAB;
if(keyCode==AC_TAB && theListDiv.selectedIndex!=-1)
{
obj.value=theListDiv.children[theListDiv.selectedIndex].value;
rmopo.hide() ;
}
if(keyCode==AC_UP_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex-1;i>-1;i--)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
}
if(keyCode==AC_DOWN_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex*1+1;i<theListDiv.children.length;i++)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
return;
}
}
function adjustListDivScroll(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if ( theListDiv==null || theListDiv.selectedIndex==-1 ) return ;
var i=theListDiv.selectedIndex;
if((theListDiv.children[i].offsetTop<theListDiv.scrollTop)||(theListDiv.children[i].offsetTop>theListDiv.scrollTop+120))
theListDiv.scrollTop=theListDiv.children[i].offsetTop-85;
}
function htmlEncode(str)
{
if(str==null) return "";
str=str.replace(/</ig,"<")
str=str.replace(/>/ig,">");
str=str.replace(/"/ig,""");
return str;
}
}
<!--end-->
<!--Combobox-->
function combobox(sobj,al_v,al_t)
{
var rmopo = window.createPopup();
function rm(i,oct,h)
{
var i2=eval(i);
var oct=eval(oct);
var w=eval(i).offsetWidth;
var h=eval(h);
var lefter = i2.offsetLeft-1; var topper = i2.offsetHeight;
rmopo.document.body.innerHTML = oct.innerHTML;
rmopo.document.body.style.border="1px solid #3162A6";
rmopo.document.body.style.background="#F6F6F6";
rmopo.show(lefter, topper, w, h, i2);
}
loadcombobox(sobj,al_v,al_t);
function loadcombobox(obj,al_v,al_t)
{
var obj = eval(obj)
theListArrayV = al_v;
theListArrayT = al_t;
var tempStr='<DIV id="'+obj.id+'showcombox" style="position:relative;visibility:hidden">'
+'<DIV class="ac_menu" id="'+obj.id+'ListDiv" style="FONT-SIZE: 12px; Z-INDEX: 10; POSITION: absolute;OVERFLOW-Y:auto; WIDTH:expression('+obj.offsetWidth+'-1);">'
for(var i=0;i<theListArrayV.length;i++)
tempStr+='<DIV class="ac_menuitem" onmouseover="this.style.backgroundColor=\'#D6DEEC\';" onmouseout="this.style.backgroundColor=\'\';" onclick="this.selectedflag=1;parent.document.all.'+obj.id+'.value=this.value;parent.document.all.'+obj.id+'.blur();" style="cursor:default;" value="'+htmlEncode(theListArrayV[i])+'" textvalue="'+htmlEncode(theListArrayT[i])+'">'+htmlEncode(theListArrayT[i])+'</DIV>';
tempStr+='</DIV></DIV>';
obj.insertAdjacentHTML("afterEnd",tempStr);
obj.onfocus=AC_OnFocus;
obj.onclick=AC_OnFocus;
obj.onblur=AC_OnBlur;
obj.onkeydown=AC_OnKeyDown;
obj.autoComplete="off";
obj.onpropertychange=AC_OnPropertyChange;
}
function AC_OnFocus(obj)
{
if(obj==null) obj=event.srcElement;
popmenu=eval(obj.id+"showcombox");
rm(obj,popmenu,130);
AC_OnPropertyChange(obj);
}
function AC_OnBlur(obj)
{
rmopo.hide();
}
function AC_OnPropertyChange(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var theListDivChildren=theListDiv.children;
theListDiv.selectedIndex=-1;
var theFirstVisibleIndex=-1;
var objValue=obj.value;
for(var i=0;i<theListDivChildren.length;i++)
{
if(theListDiv.children[i].textvalue.indexOf(objValue)==0)
{
if(theFirstVisibleIndex==-1) theFirstVisibleIndex=i;
theListDivChildren[i].style.backgroundColor="#F6F6F6";
theListDivChildren[i].style.display="";
}
else
theListDivChildren[i].style.display="none";
if(theListDiv.selectedIndex==-1 && theListDiv.children[i].textvalue==objValue)
{
theListDiv.selectedIndex=i;
}
}
if(theListDiv.selectedIndex==-1 && theFirstVisibleIndex!=-1)
{
theListDiv.selectedIndex=theFirstVisibleIndex;
}
if(theListDiv.selectedIndex!=-1)
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
}
adjustListDivScroll(obj);
}
function AC_OnKeyDown(obj)
{
if(obj==null) obj=event.srcElement;
var AC_TAB = 9;
var AC_ENTER = 13;
var AC_UP_ARROW = 38;
var AC_DOWN_ARROW = 40;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var keyCode=event.keyCode;
if(keyCode==AC_ENTER) keyCode=event.keyCode=AC_TAB;
if(keyCode==AC_TAB && theListDiv.selectedIndex!=-1)
{
obj.value=theListDiv.children[theListDiv.selectedIndex].value;
rmopo.hide() ;
}
if(keyCode==AC_UP_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex-1;i>-1;i--)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
}
if(keyCode==AC_DOWN_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex*1+1;i<theListDiv.children.length;i++)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
return;
}
}
function adjustListDivScroll(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if ( theListDiv==null || theListDiv.selectedIndex==-1 ) return ;
var i=theListDiv.selectedIndex;
if((theListDiv.children[i].offsetTop<theListDiv.scrollTop)||(theListDiv.children[i].offsetTop>theListDiv.scrollTop+120))
theListDiv.scrollTop=theListDiv.children[i].offsetTop-85;
}
function htmlEncode(str)
{
if(str==null) return "";
str=str.replace(/</ig,"<")
str=str.replace(/>/ig,">");
str=str.replace(/"/ig,""");
return str;
}
}
<!--end-->
#15
其实就是被微软给封装了一下!其它的没有什么不同的!在服务器端运行的控件在客房端显示的ID是不可预测的!所果要用其ID写写clicentid才可以!
#16
<asp:TextBox...> 最终还是解析为<input type=text...> HTML
#17
自己顶,简单的问题
#18
document.getElementById("TEXTBOX的ID")
#19
前者為服務器端控件,后者為客戶端控件 !
#20
楼主还是先了解asp.net的概念先
#21
#22
赶紧搞清楚asp.net的机理
<asp:textbox>在页面的生命周期的最后一步是要render成html<input>的
因为浏览器只解析html语言的元素
只要你保证render后的html元素的id对应就可以
<asp:textbox>在页面的生命周期的最后一步是要render成html<input>的
因为浏览器只解析html语言的元素
只要你保证render后的html元素的id对应就可以
#23
这个方法可以避免引用后id不一样的问题。
写程序时,如果能用客户端的,就不要用服务器端。
#1
按理是正确的. 除非你是用的自定义用户控件.也就是后缀名为ascx的页面... 在JS中就不能直接使用页面显示的那个ID名了.
#2
js只与客户端的表单控件有关。
服务器控件最好都会转化成客户端控件。
分析js错误只管生成的HTML代码就行了。
服务器控件最好都会转化成客户端控件。
分析js错误只管生成的HTML代码就行了。
#3
服务器控件最
后都会转化成客户端控件。
#4
属性:runat="server"
#5
最简单的办法是,运行出来看源文件,找到<asp:TextBox....>生成的<input type=text> 看看ID是什么,然后你再document.all.生成后的ID肯定没错
#6
<asp:TextBox...>是服务器控件
<input type=text...>是客户端控件
在JS里调用没必要用服务器控件
<input type=text...>是客户端控件
在JS里调用没必要用服务器控件
#7
<asp:TextBox id="TextBox1" runat="server'></asp:TextBox>
js:
combobox('<%=TextBox1.ClientID%>',lav,lat)
js:
combobox('<%=TextBox1.ClientID%>',lav,lat)
#8
看一下运行之后的HTML代码你就知道区别了.
#9
document.getElementById('textid.ClientID')
#10
combobox(document.all.<%=textid.clientId%>,lav,lat)
#11
wht6411
顶了
顶了
#12
<asp:TextBox....>这种写法是你添加了一个asp.net的组件TestBox,<input type=text ...>这种写法是你添加了一个客户端的控件,<input>是Html的标记,你写的函数是在客户端找textid,所以<input type=text ...>这种写法就完全正确。
#13
12楼说的对,确实是js函数的问题,其他楼的方法我都试了,不管用。html运行后的代码完全一样,没区别。
不知在js函数里怎么找服务器端的textid?
不知在js函数里怎么找服务器端的textid?
#14
这是我的js代码
<!--Combobox-->
function combobox(sobj,al_v,al_t)
{
var rmopo = window.createPopup();
function rm(i,oct,h)
{
var i2=eval(i);
var oct=eval(oct);
var w=eval(i).offsetWidth;
var h=eval(h);
var lefter = i2.offsetLeft-1; var topper = i2.offsetHeight;
rmopo.document.body.innerHTML = oct.innerHTML;
rmopo.document.body.style.border="1px solid #3162A6";
rmopo.document.body.style.background="#F6F6F6";
rmopo.show(lefter, topper, w, h, i2);
}
loadcombobox(sobj,al_v,al_t);
function loadcombobox(obj,al_v,al_t)
{
var obj = eval(obj)
theListArrayV = al_v;
theListArrayT = al_t;
var tempStr='<DIV id="'+obj.id+'showcombox" style="position:relative;visibility:hidden">'
+'<DIV class="ac_menu" id="'+obj.id+'ListDiv" style="FONT-SIZE: 12px; Z-INDEX: 10; POSITION: absolute;OVERFLOW-Y:auto; WIDTH:expression('+obj.offsetWidth+'-1);">'
for(var i=0;i<theListArrayV.length;i++)
tempStr+='<DIV class="ac_menuitem" onmouseover="this.style.backgroundColor=\'#D6DEEC\';" onmouseout="this.style.backgroundColor=\'\';" onclick="this.selectedflag=1;parent.document.all.'+obj.id+'.value=this.value;parent.document.all.'+obj.id+'.blur();" style="cursor:default;" value="'+htmlEncode(theListArrayV[i])+'" textvalue="'+htmlEncode(theListArrayT[i])+'">'+htmlEncode(theListArrayT[i])+'</DIV>';
tempStr+='</DIV></DIV>';
obj.insertAdjacentHTML("afterEnd",tempStr);
obj.onfocus=AC_OnFocus;
obj.onclick=AC_OnFocus;
obj.onblur=AC_OnBlur;
obj.onkeydown=AC_OnKeyDown;
obj.autoComplete="off";
obj.onpropertychange=AC_OnPropertyChange;
}
function AC_OnFocus(obj)
{
if(obj==null) obj=event.srcElement;
popmenu=eval(obj.id+"showcombox");
rm(obj,popmenu,130);
AC_OnPropertyChange(obj);
}
function AC_OnBlur(obj)
{
rmopo.hide();
}
function AC_OnPropertyChange(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var theListDivChildren=theListDiv.children;
theListDiv.selectedIndex=-1;
var theFirstVisibleIndex=-1;
var objValue=obj.value;
for(var i=0;i<theListDivChildren.length;i++)
{
if(theListDiv.children[i].textvalue.indexOf(objValue)==0)
{
if(theFirstVisibleIndex==-1) theFirstVisibleIndex=i;
theListDivChildren[i].style.backgroundColor="#F6F6F6";
theListDivChildren[i].style.display="";
}
else
theListDivChildren[i].style.display="none";
if(theListDiv.selectedIndex==-1 && theListDiv.children[i].textvalue==objValue)
{
theListDiv.selectedIndex=i;
}
}
if(theListDiv.selectedIndex==-1 && theFirstVisibleIndex!=-1)
{
theListDiv.selectedIndex=theFirstVisibleIndex;
}
if(theListDiv.selectedIndex!=-1)
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
}
adjustListDivScroll(obj);
}
function AC_OnKeyDown(obj)
{
if(obj==null) obj=event.srcElement;
var AC_TAB = 9;
var AC_ENTER = 13;
var AC_UP_ARROW = 38;
var AC_DOWN_ARROW = 40;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var keyCode=event.keyCode;
if(keyCode==AC_ENTER) keyCode=event.keyCode=AC_TAB;
if(keyCode==AC_TAB && theListDiv.selectedIndex!=-1)
{
obj.value=theListDiv.children[theListDiv.selectedIndex].value;
rmopo.hide() ;
}
if(keyCode==AC_UP_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex-1;i>-1;i--)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
}
if(keyCode==AC_DOWN_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex*1+1;i<theListDiv.children.length;i++)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
return;
}
}
function adjustListDivScroll(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if ( theListDiv==null || theListDiv.selectedIndex==-1 ) return ;
var i=theListDiv.selectedIndex;
if((theListDiv.children[i].offsetTop<theListDiv.scrollTop)||(theListDiv.children[i].offsetTop>theListDiv.scrollTop+120))
theListDiv.scrollTop=theListDiv.children[i].offsetTop-85;
}
function htmlEncode(str)
{
if(str==null) return "";
str=str.replace(/</ig,"<")
str=str.replace(/>/ig,">");
str=str.replace(/"/ig,""");
return str;
}
}
<!--end-->
<!--Combobox-->
function combobox(sobj,al_v,al_t)
{
var rmopo = window.createPopup();
function rm(i,oct,h)
{
var i2=eval(i);
var oct=eval(oct);
var w=eval(i).offsetWidth;
var h=eval(h);
var lefter = i2.offsetLeft-1; var topper = i2.offsetHeight;
rmopo.document.body.innerHTML = oct.innerHTML;
rmopo.document.body.style.border="1px solid #3162A6";
rmopo.document.body.style.background="#F6F6F6";
rmopo.show(lefter, topper, w, h, i2);
}
loadcombobox(sobj,al_v,al_t);
function loadcombobox(obj,al_v,al_t)
{
var obj = eval(obj)
theListArrayV = al_v;
theListArrayT = al_t;
var tempStr='<DIV id="'+obj.id+'showcombox" style="position:relative;visibility:hidden">'
+'<DIV class="ac_menu" id="'+obj.id+'ListDiv" style="FONT-SIZE: 12px; Z-INDEX: 10; POSITION: absolute;OVERFLOW-Y:auto; WIDTH:expression('+obj.offsetWidth+'-1);">'
for(var i=0;i<theListArrayV.length;i++)
tempStr+='<DIV class="ac_menuitem" onmouseover="this.style.backgroundColor=\'#D6DEEC\';" onmouseout="this.style.backgroundColor=\'\';" onclick="this.selectedflag=1;parent.document.all.'+obj.id+'.value=this.value;parent.document.all.'+obj.id+'.blur();" style="cursor:default;" value="'+htmlEncode(theListArrayV[i])+'" textvalue="'+htmlEncode(theListArrayT[i])+'">'+htmlEncode(theListArrayT[i])+'</DIV>';
tempStr+='</DIV></DIV>';
obj.insertAdjacentHTML("afterEnd",tempStr);
obj.onfocus=AC_OnFocus;
obj.onclick=AC_OnFocus;
obj.onblur=AC_OnBlur;
obj.onkeydown=AC_OnKeyDown;
obj.autoComplete="off";
obj.onpropertychange=AC_OnPropertyChange;
}
function AC_OnFocus(obj)
{
if(obj==null) obj=event.srcElement;
popmenu=eval(obj.id+"showcombox");
rm(obj,popmenu,130);
AC_OnPropertyChange(obj);
}
function AC_OnBlur(obj)
{
rmopo.hide();
}
function AC_OnPropertyChange(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var theListDivChildren=theListDiv.children;
theListDiv.selectedIndex=-1;
var theFirstVisibleIndex=-1;
var objValue=obj.value;
for(var i=0;i<theListDivChildren.length;i++)
{
if(theListDiv.children[i].textvalue.indexOf(objValue)==0)
{
if(theFirstVisibleIndex==-1) theFirstVisibleIndex=i;
theListDivChildren[i].style.backgroundColor="#F6F6F6";
theListDivChildren[i].style.display="";
}
else
theListDivChildren[i].style.display="none";
if(theListDiv.selectedIndex==-1 && theListDiv.children[i].textvalue==objValue)
{
theListDiv.selectedIndex=i;
}
}
if(theListDiv.selectedIndex==-1 && theFirstVisibleIndex!=-1)
{
theListDiv.selectedIndex=theFirstVisibleIndex;
}
if(theListDiv.selectedIndex!=-1)
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
}
adjustListDivScroll(obj);
}
function AC_OnKeyDown(obj)
{
if(obj==null) obj=event.srcElement;
var AC_TAB = 9;
var AC_ENTER = 13;
var AC_UP_ARROW = 38;
var AC_DOWN_ARROW = 40;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if(theListDiv==null) return ;
var keyCode=event.keyCode;
if(keyCode==AC_ENTER) keyCode=event.keyCode=AC_TAB;
if(keyCode==AC_TAB && theListDiv.selectedIndex!=-1)
{
obj.value=theListDiv.children[theListDiv.selectedIndex].value;
rmopo.hide() ;
}
if(keyCode==AC_UP_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex-1;i>-1;i--)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
}
if(keyCode==AC_DOWN_ARROW && theListDiv.selectedIndex!=-1)
{
for(var i=theListDiv.selectedIndex*1+1;i<theListDiv.children.length;i++)
{
if(theListDiv.children[i].style.display!="none")
{
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#F6F6F6";
theListDiv.selectedIndex=i;
theListDiv.children[theListDiv.selectedIndex].style.backgroundColor="#D6DEEC";
adjustListDivScroll(obj);
break;
}
}
return;
}
}
function adjustListDivScroll(obj)
{
if(obj==null) obj=event.srcElement;
var dv = eval("rmopo.document.all['"+obj.id+"ListDiv']");
theListDiv = dv
if ( theListDiv==null || theListDiv.selectedIndex==-1 ) return ;
var i=theListDiv.selectedIndex;
if((theListDiv.children[i].offsetTop<theListDiv.scrollTop)||(theListDiv.children[i].offsetTop>theListDiv.scrollTop+120))
theListDiv.scrollTop=theListDiv.children[i].offsetTop-85;
}
function htmlEncode(str)
{
if(str==null) return "";
str=str.replace(/</ig,"<")
str=str.replace(/>/ig,">");
str=str.replace(/"/ig,""");
return str;
}
}
<!--end-->
#15
其实就是被微软给封装了一下!其它的没有什么不同的!在服务器端运行的控件在客房端显示的ID是不可预测的!所果要用其ID写写clicentid才可以!
#16
<asp:TextBox...> 最终还是解析为<input type=text...> HTML
#17
自己顶,简单的问题
#18
document.getElementById("TEXTBOX的ID")
#19
前者為服務器端控件,后者為客戶端控件 !
#20
楼主还是先了解asp.net的概念先
#21
#22
赶紧搞清楚asp.net的机理
<asp:textbox>在页面的生命周期的最后一步是要render成html<input>的
因为浏览器只解析html语言的元素
只要你保证render后的html元素的id对应就可以
<asp:textbox>在页面的生命周期的最后一步是要render成html<input>的
因为浏览器只解析html语言的元素
只要你保证render后的html元素的id对应就可以
#23
这个方法可以避免引用后id不一样的问题。
写程序时,如果能用客户端的,就不要用服务器端。