日期:2014-05-19  浏览次数:20601 次

无刷新的下拉框的问题????
我所知道的用js可以做,但是因为它的值是随时变化的,所以没法办;二是用Ajax,我不太会,,如果这两者都不用,是不是就没法做了(其数据源来自数据库)???

------解决方案--------------------
两者都不用?
=============
那就先把数据库的值都读出来 放到一个控件里
然后调用
------解决方案--------------------
用ajax控件 简单
------解决方案--------------------
用MagicAjax控件吧,非常方便,只需把dropdownlist放到panel里就行了,网上搜下就很多教程的。
------解决方案--------------------
其实大家说的Ajax比较费劲都是说用AjaxPro实现这个功能~你完全可以用ASP.NET Ajax~微软的东西~非常简单~对于你这个要求~什么代码都不用改~直接用一个UpdatePanle就解决了~非常方便~保证你5分钟就会用
------解决方案--------------------
net1.1 ajaxpro
net2.0 UpdatePanle
xmlhttp
------解决方案--------------------
无刷新
就不回传了
不明白什么意思...
------解决方案--------------------
学学ajax,没你想的那么难。
------解决方案--------------------
ajax,比较简单,我以前学jsp 的时候理解了他的工作原理。在。net里使用就很容易了,好多都做成控件了,估计最多一天或者半天,你就能把他学明白
=============================================================================
.net技术交流群 QQ:8793209,欢迎职业的程序员加入讨论交流!

------解决方案--------------------
恩,用Ajax吧,如果不是太复杂的功能,其实用起来不是那么难的。
------解决方案--------------------
这个是要求联动的后台:
Me.DropDownList1.Attributes.Add( "onChange ", "load(this.options[this.selectedIndex].value) ")
Me.DropDownList2.Attributes.Add( "onChange ", "javascript:document.Form1.TH.value=this.options[this.selectedIndex].value; ")
要求联动的前台:
<script language= "javascript ">
function load(ClassID){
var drp2 = document.getElementById( "DropDownList2 ");
function RemoveAll(oElem) {
var i = 0;
for (i = oElem.length; i > = 0; i--){
oElem.options.remove(i);
}
}
RemoveAll(drp2)
var oHttpReq = new ActiveXObject( "MSXML2.XMLHTTP ");
var oDoc = new ActiveXObject( "MSXML2.DOMDocument ");
oHttpReq.open( "POST ", "DropChild.aspx?ClassID= "+ClassID, false);

oHttpReq.send( " ");
result = oHttpReq.responseText;
oDoc.loadXML(result);
items1 = oDoc.selectNodes( "//CLASSNAME/Table/ClassName ");
items2 = oDoc.selectNodes( "//CLASSNAME/Table/ClassID ");
var itemsLength=items1.length;
for(i=0;i <itemsLength;i++)
{
var newOption = document.createElement( "OPTION ");
newOption.text=items1[i].text;
newOption.value=items2[i].text;
drp2.options.add(newOption);
}
}
</script>

获取值的的页面后台:
If Not Me.Request( "ClassID ") Is Nothing Then
Dim state As Integer = Convert.ToInt32(Request( "ClassID "))
' ページを初期化するユーザー コードをここに挿入します。
Dim con As SqlConnection
con = New SqlConnection( "server=wxhy-lee;database=JustTest;uid=sa;pwd=sa; ")
Dim da As SqlDataAdapter