新足迹

 找回密码
 注册

精华好帖回顾

· 北京之行FB记(内含图片不过没有做法)之三 (2005-1-18) cheers · 10日 环游 新西兰南岛 游记 (更新到第10天,全文结束!) (2009-11-12) JackZhang
· [面子产品大交流]之不成系统版 (2007-3-12) moth · 西餐大赛---姐整的都是平民的(蛋糕详细做法已上 (2011-1-6) chesecake
Advertisement
Advertisement
查看: 2443|回复: 41

asp.net + jquery 问题,各位长老,显圣吧!!(已经解决,收了神通吧) [复制链接]

头像被屏蔽

禁止访问

发表于 2011-3-24 12:25 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
server side
---------------------
    protected void Page_PreInit(object sender, EventArgs e)
    {
        Label_CanAddReport.Text = "ok";
    }

client side
---------------------
$(function() {
        var a = $('#Label_CanAddReport').val();
        });
---------------------

debug 发现, a 总是空值 "", 咋办???

[ 本帖最后由 atransformer 于 2011-3-24 13:58 编辑 ]

评分

参与人数 1积分 +6 收起 理由
zn7726 + 6 脑筋急转弯? again?

查看全部评分

Advertisement
Advertisement

发表于 2011-3-24 12:34 |显示全部楼层
此文章由 乱码 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 乱码 所有!转贴必须注明作者、出处和本声明,并保持内容完整
问题可能在于 Page_PreInit,这个很少用,除非你不想你的server control maintain state,可能后来的值把它冲掉了,你试一下page_init.

client那边,你用不用这个js function,直接在console中run,$('#Label_CanAddReport').val(),看返回值.

[ 本帖最后由 乱码 于 2011-3-24 13:36 编辑 ]
头像被屏蔽

禁止发言

发表于 2011-3-24 12:48 |显示全部楼层
此文章由 linkspeed 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 linkspeed 所有!转贴必须注明作者、出处和本声明,并保持内容完整
>var a = $('#Label_CanAddReport').val();

asp.net webform吗?

如果是,那个id估计不是这个把?
头像被屏蔽

禁止访问

发表于 2011-3-24 12:57 |显示全部楼层

问题解决了,还是对label 和 jquery 不够了解。

此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
应该用  $('#Label_CanAddReport').text();

而不是 $('#Label_CanAddReport').val();

发表于 2011-3-24 12:59 |显示全部楼层
此文章由 zn7726 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 zn7726 所有!转贴必须注明作者、出处和本声明,并保持内容完整
看来又是脑筋急转弯帖.
加分感谢

2010年度奖章获得者

发表于 2011-3-24 12:59 |显示全部楼层
此文章由 dalaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 dalaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
靠webform page life cycle....美好的回忆啊

PreInit 一般不给control赋值。 PreInit 可以设Master Page, Theme.

因为Load Value from PostBack 是在之后阶段发生的,

你的值为空,就是因为ViewState 里这个label 的值是空的。

另外,你的code也是错的

Label_CanAddReport 是server ID, Js 里不能直接用的, 要ClientID
ASP.NET 4.0 里才有统一的。
足迹 Reader is phenomenal. If you never used, you never lived 火速下载
Advertisement
Advertisement
头像被屏蔽

禁止访问

发表于 2011-3-24 13:02 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 zn7726 于 2011-3-24 13:59 发表
看来又是脑筋急转弯帖.
加分感谢


谢谢NN. 周六来不?
头像被屏蔽

禁止访问

发表于 2011-3-24 13:03 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 13:59 发表
靠webform page life cycle....美好的回忆啊

PreInit 一般不给control赋值。 PreInit 可以设Master Page, Theme.

因为Load Value from PostBack 是在之后阶段发生的,

你的值为空,就是因为ViewState 里这个label 的 ...


谢谢经验。 不过,server 的 ID 可以直接用。已经这么干很长时间了。

2010年度奖章获得者

发表于 2011-3-24 13:05 |显示全部楼层

回复 atransformer 8# 帖子

此文章由 dalaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 dalaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
asp.net 4.0吧?  

之前的版本怎么可能? 都得用clientid的。。。 难道我out了?

发表于 2011-3-24 13:07 |显示全部楼层
此文章由 pengruijun 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 pengruijun 所有!转贴必须注明作者、出处和本声明,并保持内容完整
$('#" + <%= Label_CanAddReport.ClientID %>').text()
头像被屏蔽

禁止访问

发表于 2011-3-24 13:07 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 14:05 发表
asp.net 4.0吧?  

之前的版本怎么可能? 都得用clientid的。。。 难道我out了?


一直在用3.5
Advertisement
Advertisement
头像被屏蔽

禁止访问

发表于 2011-3-24 13:08 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 pengruijun 于 2011-3-24 14:07 发表
$('#" + ').text()


不用 $('#Label_CanAddReport').text(); 就可以
头像被屏蔽

禁止访问

发表于 2011-3-24 13:09 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 14:05 发表
asp.net 4.0吧?  

之前的版本怎么可能? 都得用clientid的。。。 难道我out了?


其实 2.0-3.5 都是 2.0 吧??

2010年度奖章获得者

发表于 2011-3-24 13:11 |显示全部楼层
此文章由 dalaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 dalaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
<aspabel runat="Server" ID="Label_CanAddReport" />

可以直接
$('#Label_CanAddReport') ?

得让乱码来确认一下, 我很久没碰这个了。。。 有点难以置信了
头像被屏蔽

禁止访问

发表于 2011-3-24 13:13 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 14:11 发表


可以直接
$('#Label_CanAddReport') ?

得让乱码来确认一下, 我很久没碰这个了。。。 有点难以置信了



难道你对我的vs2008有怀疑态度?? 我们的web server 都没装  4.0

发表于 2011-3-24 13:15 |显示全部楼层
此文章由 pengruijun 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 pengruijun 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 14:11 发表


可以直接
$('#Label_CanAddReport') ?

得让乱码来确认一下, 我很久没碰这个了。。。 有点难以置信了

我认为不可以
Advertisement
Advertisement

2010年度奖章获得者

发表于 2011-3-24 13:22 |显示全部楼层
此文章由 dalaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 dalaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 atransformer 于 2011-3-24 14:13 发表



难道你对我的vs2008有怀疑态度?? 我们的web server 都没装  4.0

不是不信你,你的用法肯定是错的, 除非你们有什么中间层来解析Server ID.


4.0 之前
$("#<%= ServerID.ClientID %>")

4.0 里有
ClientIDMode=”Predictable“
足迹 Reader is phenomenal. If you never used, you never lived 火速下载
头像被屏蔽

禁止访问

发表于 2011-3-24 13:27 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 14:22 发表

不是不信你,你的用法肯定是错的, 除非你们有什么中间层来解析Server ID.


4.0 之前
$("#")

4.0 里有
ClientIDMode=”Predictable“


那我还是收声吧。 你用你的VS测一下不就行了?

2010年度奖章获得者

发表于 2011-3-24 13:40 |显示全部楼层

回复 atransformer 18# 帖子

此文章由 dalaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 dalaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
试了, 就像我说的

直接就 ''undefined, 要用clientid 才行。

发表于 2011-3-24 13:42 |显示全部楼层
此文章由 cdfei 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 cdfei 所有!转贴必须注明作者、出处和本声明,并保持内容完整
要4.0,ClientIDMode="Static"才能直接在client用这个ID,不过还是用ClientID比较保险,你不能保证这个ID可以用。
LZ是澳X的马甲?
头像被屏蔽

禁止访问

发表于 2011-3-24 13:53 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 cdfei 于 2011-3-24 14:42 发表
要4.0,ClientIDMode="Static"才能直接在client用这个ID,不过还是用ClientID比较保险,你不能保证这个ID可以用。
LZ是澳X的马甲?


是澳X的马甲。

既然你们都这么说,我就信了。虽然我又查了我的机子,确实是3.5。又查了我的web server,确实也是3.5。 而且我一直用VS2008, 难道出鬼了?
Advertisement
Advertisement

发表于 2011-3-24 13:57 |显示全部楼层

回复 atransformer 21# 帖子

此文章由 cdfei 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 cdfei 所有!转贴必须注明作者、出处和本声明,并保持内容完整
理论上也不该这样用,比如你用了用户控件,很可能就有相同的ID,所以还是用ClientID比较好。

2010年度奖章获得者

发表于 2011-3-24 14:03 |显示全部楼层
此文章由 dalaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 dalaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 atransformer 于 2011-3-24 14:53 发表


是澳X的马甲。

既然你们都这么说,我就信了。虽然我又查了我的机子,确实是3.5。又查了我的web server,确实也是3.5。 而且我一直用VS2008, 难道出鬼了?

你们多半有中间层做ID解析的。

否则你这样用肯定是错的。
足迹 Reader is phenomenal. If you never used, you never lived 火速下载

2010年度奖章获得者

发表于 2011-3-24 14:03 |显示全部楼层
此文章由 dalaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 dalaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 cdfei 于 2011-3-24 14:57 发表
理论上也不该这样用,比如你用了用户控件,很可能就有相同的ID,所以还是用ClientID比较好。

是啊, 如果2个control里有同样的ID,就会出错。

ClientID最保险
足迹 Reader is phenomenal. If you never used, you never lived 火速下载
头像被屏蔽

禁止访问

发表于 2011-3-24 14:08 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 15:03 发表

是啊, 如果2个control里有同样的ID,就会出错。

ClientID最保险


好,学习了,以后精益求精。 我一直单干,难道有神帮我解析了?

发表于 2011-3-24 14:13 |显示全部楼层

回复 atransformer 25# 帖子

此文章由 cdfei 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 cdfei 所有!转贴必须注明作者、出处和本声明,并保持内容完整
你不是被封IP了吗?
Advertisement
Advertisement

发表于 2011-3-24 14:15 |显示全部楼层
此文章由 典 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 典 所有!转贴必须注明作者、出处和本声明,并保持内容完整
Back to asp.***
When you "view source" (from the client browser), the element id is not same as server control ID (element id =lot of rubish string plus server control id)

later, including vs2008, the client element id is same as server control ID.

SO LZ is not so wrong.
头像被屏蔽

禁止访问

发表于 2011-3-24 14:15 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 cdfei 于 2011-3-24 15:13 发表
你不是被封IP了吗?


proxy。
头像被屏蔽

禁止访问

发表于 2011-3-24 14:20 |显示全部楼层
此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 于 2011-3-24 15:15 发表
Back to asp.***
When you "view source" (from the client browser), the element id is not same as server control ID (element id =lot of rubish string plus server control id)

later, including vs2008, th ...


这个问题真的是神了。 由于长时间单干,很缺乏和其他develper的交流。   哎。

我这么用已经很长时间了。 When I "view source" (from the client browser), the element id is SAME as server control ID

发表于 2011-3-24 14:21 |显示全部楼层
此文章由 典 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 典 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 dalaohu 于 2011-3-24 14:03 发表

是啊, 如果2个control里有同样的ID,就会出错。

ClientID最保险


In VS2008,
2个control里有同样的ID is not allowed

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Advertisement
Advertisement
返回顶部