在做 BS架构的项目时,经常遇到 需要用js 来调用 asp.net 服务器端控件的值,以下为常见的几种:
大多数的 控件他的值都可以通过js调用它的 value属性来获得此控件的值,但是也有例外的情况:如 Label控件,他的值用js就不能通过value属性来获得。
1.Label控件 js获取的实例:
var text= document.getElementById(("<%=this.Label1.ClientID%>").innerText;
假如这样: var text= document.getElementById(("<%=this.Label1.ClientID%>").value; 则 text 为Undefined。
2.TextBox 的值----就可以
var text= document.getElementById("<%=this.TextBox1.ClientID%>").value ;
解释:因为服务器控件render到客户端的时候如果有panel或者masterpage那么ID是会变的,应该用document.getElementByID('<%=Textbox1.ClientID%>');这样无论怎样都能获取到textbox。label了
对于,RadioButtonList 与 DropDownList 他们的获取方式是大不一样的! 这主要是因为 他们所生成的 html元素不一样。
3.DropDownList 的值获取:
var ddlvalue = document.getElementById('ctl00_Contentplaceholder3_ddlFolws').value;
4.RadioButtonList 的值获取 就比较麻烦:
var value = "";
var Result = document.getElementsByName('ctl00$Contentplaceholder3$rblResult');
for (var i = 0; i < Result.length; i++) {
if (Result.item(i).checked) {
value = Result.item(i).value;
}
}
如果 RadioButtonList 控件 没有一个选择的 那么 value的值 为空!
=======關於substring 用法(字符串截取)======
function SubstringDemo(){
var ss; // 声明变量。
var s = "The rain in Spain falls mainly in the plain..";
ss = s.substring(12, 17); // 取子字符串。
return(ss); // 返回子字符串。
}
========================================
關於寫得一個超爛的學習稿:
protected void Page_Load(object sender, EventArgs e)
{
this.Drop1.Attributes.Add("onblur", "javascript:document.getElementById('TextBox5').value=(this.options[this.selectedIndex].text).concat('FFFF');");
this.TextBox5.Attributes.Add("onfocus", "javascript:this.value=parseInt(document.getElementById('Drop1').value)+parseInt(document.getElementById('Drop2').value)");
this.ListBox1.Attributes.Add("onchange", "javascript:listclick1();return false;");
this.ListBox2.Attributes.Add("onchange", "javascript:listclick2();return false;");
}
--------------
<script language="javascript" type="text/javascript">
function listclick1()
{
var listBox1=document.getElementById("ListBox1");
var listBox2=document.getElementById("ListBox2");
var index1 = listBox1.selectedIndex;
var index2 = listBox2.selectedIndex;
if(index1!=-1 && index2!=-1)
{
var num=parseInt(document.getElementById("listBox1").value)+parseInt(document.getElementById("listBox2").value);
var ss=document.getElementById("TextBox3").value.substring(3,12);
var i = (''+num).length;
while (i++ < 2) num = '0' + num;
num='B'+num+ss;
document.getElementById("LBcode").innerText=num;
}
}
function listclick2()
{
var listBox1=document.getElementById("ListBox1");
var listBox2=document.getElementById("ListBox2");
var index1 = listBox1.selectedIndex;
var index2 = listBox2.selectedIndex;
if(index1!=-1 && index2!=-1)
{
var num=parseInt(document.getElementById("listBox1").value)+parseInt(document.getElementById("listBox2").value);
var ss=document.getElementById("TextBox3").value.substring(3,12);
var i = (''+num).length;
while (i++ < 2) num = '0' + num;
num='B'+num+ss;
document.getElementById("LBcode").innerText=num;
}
}
</script>