后台span 取值问题

m0_37443669 2017-03-14 04:39:17

我想在后台获取票数counter的值,票数的值是由js改变的。(见下图,参考别人的)
试过换成label,可还是取不到变化后的值。页面上面值是正常改变的
新手求助!新手求助!新手求助!说三遍!
...全文
472 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanglong_longlong 2017-03-15
  • 打赏
  • 举报
回复
Hidden控件,隐藏控件进行赋值和取值,前台赋值,后台对他进行取值
正怒月神 版主 2017-03-15
  • 打赏
  • 举报
回复
引用 13 楼 peng2739956 的回复:
楼主是直接用的Lable对应的Sapn 所以用$("#id").text() 或者说$("#id").innerhtml是取不到值得,所以我也同意用hidden这个方式进行取值。
如果说lable的话,那我觉得问题应该出在id上
<body>
    <form id="form1" runat="server" autocomplete="on">
        <div id="dv1">
            <asp:Label ID="Label1" runat="server" Text="123123"></asp:Label>
        </div>
        
    </form>
</body>
<script>
    alert($('#<%=Label1.ClientID%>').text());
</script>
主要还是$('#<%=Label1.ClientID%>')
peng2739956 2017-03-15
  • 打赏
  • 举报
回复
引用 12 楼 hanjun0612 的回复:
没有细看你的代码,但是肯定取span的内容是可以的。span.html()
<body>
    <form id="form1" runat="server" autocomplete="on">
        <div id="dv1">
            <span id="sp">123</span>
        </div>
        <input type="button" id="edit" value="edit"/>
        <input type="button" id="print" value="print"/>
    </form>
</body>
<script>
    //修改span的值
    $('#edit').click(function () {
        $('#sp').html('hahah123');
    })
    //弹出修改后的值    hahah123
    $('#print').click(function () {
        var s = $('#sp');
        alert(s.html())
    })
    
</script>
楼主是直接用的Lable对应的Sapn 所以用$("#id").text() 或者说$("#id").innerhtml是取不到值得,所以我也同意用hidden这个方式进行取值。
正怒月神 版主 2017-03-15
  • 打赏
  • 举报
回复
没有细看你的代码,但是肯定取span的内容是可以的。span.html()
<body>
    <form id="form1" runat="server" autocomplete="on">
        <div id="dv1">
            <span id="sp">123</span>
        </div>
        <input type="button" id="edit" value="edit"/>
        <input type="button" id="print" value="print"/>
    </form>
</body>
<script>
    //修改span的值
    $('#edit').click(function () {
        $('#sp').html('hahah123');
    })
    //弹出修改后的值    hahah123
    $('#print').click(function () {
        var s = $('#sp');
        alert(s.html())
    })
    
</script>
Veary 2017-03-15
  • 打赏
  • 举报
回复
取span中间的内容应该使用$("#XXX").html()
  • 打赏
  • 举报
回复
引用 7 楼 m0_37443669 的回复:
按照楼上给出的写,counter一直都是0. 我把脚本放在click function里面的,不知道是不是因为脚本写错位置了。。。
应该取文本。 如果 val() 函数能取到值,你根本就不用提这个问题了。有 value 属性的数据都会自动提交,正因为没有 value/val() 所以你才会使用HiddenField.val(,,,,) 这个有 value 属性的东西来保存 text 呢。
  • 打赏
  • 举报
回复
$counter.text() 函数返回文本,$counter.text(...) 函数设置文本。 我们使用 mvvm 模式的 ko 来设计 ViewModel,那样可以将“值”完全抽象化,跟作为 View 的 DOM 分离。
  • 打赏
  • 举报
回复
你后来在 #2 楼贴出的代码中不是已经写了
$conter.text(....)
来赋“值”的代码了嘛。 其实这已经不是 value 了,说“值”有点歧义。<span>只有文本,没有值。
m0_37443669 2017-03-14
  • 打赏
  • 举报
回复
按照楼上给出的写,counter一直都是0. 我把脚本放在click function里面的,不知道是不是因为脚本写错位置了。。。
CaRrot_Love 2017-03-14
  • 打赏
  • 举报
回复
引用 2 楼 m0_37443669 的回复:
脚本里面的点击事件是这样。 取值我试了网上的很多办法,都米有成功,就没有贴图了。。。
版主的方案代码既是

//html
票数:<span id="counter"></span>
<asp:HiddenField runat="server" ID="hidCounter" />

//JS
$('<%=hidCounter.ClientID %>').val($('#counter').val());

int counter = Int32.TryParse(hidCounter.Value,out counter)?Convert.ToInt32(hidCounter.Value):0;
  • 打赏
  • 举报
回复
<asp:Hidden id="hd_xxx" runat="server">
应该差不多是这样吧,vs工具栏有的
m0_37443669 2017-03-14
  • 打赏
  • 举报
回复
新手hidden控件米有使用过,可以麻烦楼上的帮忙怎么用hidden接收吗。。。灰常感谢
  • 打赏
  • 举报
回复
Label对应Span,属于不可变控件,所以值是从ViewState恢复的 你可以弄个Hidden控件来接收这个值,即你在更新Label的同时更新Hidden,后台通过Hidden来获取值
m0_37443669 2017-03-14
  • 打赏
  • 举报
回复

脚本里面的点击事件是这样。
取值我试了网上的很多办法,都米有成功,就没有贴图了。。。
bwangel 2017-03-14
  • 打赏
  • 举报
回复
然鹅并没有看到你如何取值的代码。 话说服务端控件的ID是不能直接用在js脚本里的。

62,046

社区成员

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

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

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

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