急求服务器取客户端值的问题?

ykwang 2004-04-16 01:20:06
我有两个DROP控件?

分DROP1 DROP2
DROP2的值根据DROP1的值产生.
因为如果用服务器判断的话,会引起屏幕刷新,所以用JS实现.

可为什么当我在客户端用JS实现选择后,当在服务器用户一提交,原来用户所选的值就为空??
如在服务端增一个按钮.当用户了点了下CLICK,为什么用户所选择的值都为空了呢?
...全文
59 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ykwang 2004-04-17
  • 打赏
  • 举报
回复
现在的问题是,值可以提取,但是假如用户输入错误,我提示它,当用户点击回到开始页面的时候,里面DROP2的值就没了.
kendison 2004-04-17
  • 打赏
  • 举报
回复
用js控制的话,只可以当drop onchange时,将drop的option的value值放在一个hidden控件里面,在提交时取这个hidden控件的值,别无他法
ykwang 2004-04-17
  • 打赏
  • 举报
回复
求急
ykwang 2004-04-17
  • 打赏
  • 举报
回复
谢谢,用Request.Form["DROP1"]值可以出来了,但是如果客户输入不正确,我用
request.write ("<script>alert('对不起 数据不符合要求');</script>")
一提示的话,原来上面的数据都没了?该怎么做?
iyond 2004-04-17
  • 打赏
  • 举报
回复
不要用DROP1.SelectedIndex,用Request.Form["DROP1"]
stoway 2004-04-17
  • 打赏
  • 举报
回复
你可以在客户端来判断:
Page_Load(..){
if(!IsPostBack){
btnSave.Attributes.Add("onclick","javascript:return validate();");//如果验证通过执行按钮事件.
}
}
在客户端:
function validate(){
//在这里做判断,如果判断通过就return ture;否则return false;
}
如果你的判断非要在服务端来判断,如果是服务器控件你可以根据值直接给它赋值,如果是html控件可以在前台写个javascript的赋值方法:
function setValSelected(val){
for(i = 0 ; i < document.all("控件ID").options.length ; i ++){
if(document.all("控件ID").options[i].value == val){
document.all("控件ID").options[i].selected = true;
return;
}
}
}
然后在后台赋值:
RegisterStartupScript("val","<script>setValSelected('" + s "');</script>");
ykwang 2004-04-17
  • 打赏
  • 举报
回复
up

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧