JS赋值,.NET后台取值

mizchh 2012-08-30 01:18:08
我想用JS给某个控件赋值,之后再从.NET页面后台调用这个控件。前后两者都得在页面加载时执行。
...全文
454 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
色拉油 2012-09-05
  • 打赏
  • 举报
回复
建议楼主好好学习页面生命周期
  • 打赏
  • 举报
回复

private void page_load(...)
{
string s = txtLoadValue.Value.Trim();
}
mizchh 2012-09-05
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 的回复:]

JScript code

window.onload = function(){
document.getElementById("txtLoadValue").value = getValue();

}
function getValue()
{
// 生成你所要的值 返回
}
[/Quote]


是.NET后台里的PAGE_LOAD
  • 打赏
  • 举报
回复

window.onload = function(){
document.getElementById("txtLoadValue").value = getValue();

}
function getValue()
{
// 生成你所要的值 返回
}
  • 打赏
  • 举报
回复
<input type='text' id='txtLoadValue' runat='server'>


window.onload = function(){
document.getElementById("txtLoadValue").value = "Test";

}
mizchh 2012-09-05
  • 打赏
  • 举报
回复
我要用JS里的函数来生成一个值,然后再到后台LOAD页面时使用这个值。
紫魂一号 2012-09-05
  • 打赏
  • 举报
回复
保证先后顺序就没问题。。你先前台调用事件,然后再后台执行。。如果是先于前台执行了,那肯定是拿不到值的
宏尘 2012-09-05
  • 打赏
  • 举报
回复
赋值后用cookie保存该值
页面重新加载的时候把数据从cookie中读出来。
yonglaixiazaide 2012-08-30
  • 打赏
  • 举报
回复
你的想法 完全 有问题。。逻辑就有问题了,cs中代码是在服务器上执行的,输出html,页面上的html是下载到你浏览器上 加载的你。。你说怎么实现? 你就说你要实现什么功能吧。。
毛毛虫的爱 2012-08-30
  • 打赏
  • 举报
回复
可以考虑hidden隐藏域啊 托个hidden控件 前台js 后台都能取到
风2013 2012-08-30
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

引用 2 楼 的回复:

前后两者都得在页面加载时执行 第一次加载 你想取js赋值给控件的值?
如果是这样 是不可能是实现的

执行代码的顺序 是先服务器端代码 之后才会执行客服端代码的 什么是服务器端代码 什么是客户端代码 你应该清楚吧


清楚,我以为在后台调用JS就可以了,结果不行。。即时在JS里调用后台也不可取。不知道还有其它办法没有。
[/Quote]

还有你在后台调用JS 那也还是客户端代码 需等到服务器端代码执行完才会执行的
风2013 2012-08-30
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

引用 2 楼 的回复:

前后两者都得在页面加载时执行 第一次加载 你想取js赋值给控件的值?
如果是这样 是不可能是实现的

执行代码的顺序 是先服务器端代码 之后才会执行客服端代码的 什么是服务器端代码 什么是客户端代码 你应该清楚吧


清楚,我以为在后台调用JS就可以了,结果不行。。即时在JS里调用后台也不可取。不知道还有其它办法没有。
[/Quote]

你的流程上可能出现了问题 首先你的你说你要把通过js值赋值给控件 然后再取该控件上的值 那也就是说你那个值一开始就已经有了 为啥还要取控件的值呢 你在你的第一步的时候完全可以再后台获取到这个值得 何必再多次一举呢(如果你是不想改变你代码的结构 那你可以把这个当成一个特意去处理啊)
  • 打赏
  • 举报
回复
就看着问题我猜你的思路就错了,你还是直接说你要干什么吧,不要问这么具体的实现了,说需求
wangyizhi58 2012-08-30
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
我想用JS给某个控件赋值,之后再从.NET页面后台调用这个控件。前后两者都得在页面加载时执行。
[/Quote]
好像不可以把。你应该理解请求的过程把。先把后台代码执行完成后,解析成html,然后再由iis返回到客户端,总之js是晚于后台代码执行的,所以你不可以取到。
但是,如果你要是用ajax可以。
判断当页面加载完毕时向后台代码发送请求,后台进行一下判断。
yibey 2012-08-30
  • 打赏
  • 举报
回复
我想用JS给某个控件赋值。。。

直接说你想干嘛吧
mizchh 2012-08-30
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

可以用js获取该控件的值,然后用get方式传到后台
[/Quote]

朋友,是Load不是提交表单。
mizchh 2012-08-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

前后两者都得在页面加载时执行 第一次加载 你想取js赋值给控件的值?
如果是这样 是不可能是实现的

执行代码的顺序 是先服务器端代码 之后才会执行客服端代码的 什么是服务器端代码 什么是客户端代码 你应该清楚吧
[/Quote]

清楚,我以为在后台调用JS就可以了,结果不行。。即时在JS里调用后台也不可取。不知道还有其它办法没有。
xiaobei_109 2012-08-30
  • 打赏
  • 举报
回复
可以用js获取该控件的值,然后用get方式传到后台
happytonice 2012-08-30
  • 打赏
  • 举报
回复
是要有个顺序的,页面的控件需要加载完毕,js才能在客户端赋值,然后在后台取值。

用jquery做,类似:

<script type="text/javascript">
$(document).ready(function(){
$("#<%=TextBox1.ClientID%>").val("Hello World");
});
</script>

  • 打赏
  • 举报
回复
例如文本框<input type="text" id="input_name" value=""/>

1.加上<input type="text" id="input_name" value="" runat="server"/>
后台可以直接访问到该控件

2.如果纯静态,那么可以js+ajax提交给处理程序,然后由处理程序处理信息,最后返回结果
加载更多回复(2)

62,041

社区成员

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

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

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

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