1.aspx和2.aspx
1载入的时候,弹出2,2中Listbox选择一个值(班级)后,将此值返回给1,比如1班
然后1根据这个值,到数据库查相应的数据(1班所有学生的信息),结果显示在DataGrid中我用的是vs.net 2003,现在的问题是 怎样根据这个返回值去查数据库呢?
用什么方法呢?
1载入的时候,弹出2,2中Listbox选择一个值(班级)后,将此值返回给1,比如1班
然后1根据这个值,到数据库查相应的数据(1班所有学生的信息),结果显示在DataGrid中我用的是vs.net 2003,现在的问题是 怎样根据这个返回值去查数据库呢?
用什么方法呢?
我的TextBox1_TextChanged事件怎么也触发不了
autopostback 已经 = true 了
在TextBox1中输入还是没有响应
这个用JS就可以搞定了,通过opener得到2种的控件的值。//然后1根据这个值,到数据库查相应的数据(1班所有学生的信息),结果显示在DataGrid中
这个用"select * from table where field = '" + yourvalue + "'"类似方法可以搞定。
至于如何查,你输入SqlConnection, SqlCommand, SqlDataReader这些东西,然后按F1看看MSDN就会了。//我的TextBox1_TextChanged事件怎么也触发不了
//autopostback 已经 = true 了
//extBox1中输入还是没有响应
这个可不是和WINFORM里一样了,这里所谓的TextChanged ,是你数据提交到服务器后由服务器来判断是否发生了变化,如果变化才触发这个事件。所以你就算设置TRUE也没用。
一个变通的方法是:你用js脚本判断是否文本发生了变化。如果变化了则调用服务器脚本(如果你能使用AJAX来调用是最好了)
2,textChagned事件並不是輸入馬上觸發,而是當TextBox失去焦點後才觸發
建議:LZ在同一個頁面裡用<Div>來實現。
这个用"select * from table where field = '" + yourvalue + "'"类似方法可以搞定。
至于如何查,你输入SqlConnection, SqlCommand, SqlDataReader这些东西,然后按F1看看MSDN就会了。----
这位兄弟大概是理解错我的意思了,如果用按钮的话,很容易实现。这个我会
现在的问题是在2中选择了后,返回一个值给1,然后1立即执行,而不是人工再去点按钮去查询,自动查询
把重心转移到查询上来
呵呵~~
//现在的问题是在2中选择了后,返回一个值给1,然后1立即执行,而不是人工再去点按钮去查询,自动查询如果这样的话,建议你还是用AJAX的比较好,否则页面的效果很差的,老是刷新。
以下是不用AJAX的操作方法:
<script language="javascript">
<!--
function __doPostBack(eventTarget, eventArgument) {
var theform;
if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) {
theform = document.forms["Form1"];
}
else {
theform = document.Form1;
}
theform.__EVENTTARGET.value = eventTarget.split("$").join(":");
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
// -->
</script>由此我们可以知道ASPX为了能够执行服务器方法,是使用了HIDDEN作标记,然后调用SUBMIT提交页面,执行方法。这样的话,我们是不是也可以这样:
你从2页面得到了返回的值后:
<script>
fucntion GetDataformReturnValue(myValue)
{
var theform;
theform = document.Form1; theform.__MYMETHODNAME.value = "getData";
theform.__MYARG.value = myValue;
theform.submit();
}然后你在后台判断一下__MYMETHODNAME是不是等于getData,如果等于则调用后台的一个方法:
DataTable = getDataFromDB(__MYARG.value);这样就可以实现你的要求了,但是强烈不要这样,老师刷新页面。(最关键的是你之前说了一句话:1载入的时候,弹出2....嘿嘿,你这样就完蛋啦,除非你让2是你手动弹出)