none
asp.net中获取html元素属性的方法 RRS feed

  • 问题

  • 在.cs文件中尝试修改/读取 非服务器控件元素属性。
      比如我在 html里面有个 <img id="1" src="1.jpg".../> (不包含runat="server!)" 。 现在想在.cs后台文件里读取或者修改该img的一些属性。 该如何实现。
      读取和修改都举个例子。 谢谢啦。
    2009年7月13日 6:04

答案

  • 如果你非得不用服务器控件 可以通过ClientManager.RegisterStartUpScript 方法然后输出js 来操作img
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://hi.baidu.com/1987raymond
    2009年7月13日 6:09
    版主
  • 你的html代码在客户端上 cs代码在服务端上 两者之间有差距  你想操作html 只能用js操作

    2009年7月13日 7:35
  • 你可以放在Literal控件里面

    Literal1.Text = "<img id='xxxx' src='1.jpg'.xxxxx./>"

    【孟子E章】
    2009年7月13日 8:53
    版主
  • 1.这个功能实现,要么是js,客户端直接修改
    2.Ajax,也是返回标签对应的字符串,直接给div的innerHTML。
    3.服务端修改,在页面发送到客户端以前,重新生成以下image相关的tag,当然这个前提是你要能控制这控件,可以把其放入一个添加了runat='server'属性的控件里,比如div,你在使用div.innerHTML =“<img id="1" src="1.jpg".../>“字符串就可以了。
      思路基本是差不多的,你如果客户端有post操作,方式3倒是可以尝试。没有的话,使用2的方式结合ajax。~
    Frank.Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    老徐的博客:http://frank_xl.cnblogs.com
    2009年7月13日 10:18
    版主
  • 不包含runat="server"就不能当成服务器控件~只能通过javascript或表单来进行客户端与服务器之间的数据传递和修改~
    宠辱不惊,看庭前花开花落。去留无意,望天上云卷云舒。
    2009年7月14日 2:16
    版主
  • 服务端不可能控制客户端,除非用脚本;
    大其心,可容天下之物; 虚其心,可受天下之善;
    2009年7月14日 14:32
  • 如果不想用服务器端控件的形式修改图片的属性,建议还是用客户端的js进行修改

    document.getElementById("1").src="2.jpg"
    我的博客,最近新写了一个Windows Mobile 6.5 Widget开发的文章,欢迎捧场
    尽力回答每一个问题,但不代表一定正确,希望初学者能够多自己尝试。。共勉。。:)
    2009年7月15日 2:54
    版主

全部回复

  • 如果你非得不用服务器控件 可以通过ClientManager.RegisterStartUpScript 方法然后输出js 来操作img
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://hi.baidu.com/1987raymond
    2009年7月13日 6:09
    版主
  • 你的html代码在客户端上 cs代码在服务端上 两者之间有差距  你想操作html 只能用js操作

    2009年7月13日 7:35
  • 你可以放在Literal控件里面

    Literal1.Text = "<img id='xxxx' src='1.jpg'.xxxxx./>"

    【孟子E章】
    2009年7月13日 8:53
    版主
  • 1.这个功能实现,要么是js,客户端直接修改
    2.Ajax,也是返回标签对应的字符串,直接给div的innerHTML。
    3.服务端修改,在页面发送到客户端以前,重新生成以下image相关的tag,当然这个前提是你要能控制这控件,可以把其放入一个添加了runat='server'属性的控件里,比如div,你在使用div.innerHTML =“<img id="1" src="1.jpg".../>“字符串就可以了。
      思路基本是差不多的,你如果客户端有post操作,方式3倒是可以尝试。没有的话,使用2的方式结合ajax。~
    Frank.Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    老徐的博客:http://frank_xl.cnblogs.com
    2009年7月13日 10:18
    版主
  • 不包含runat="server"就不能当成服务器控件~只能通过javascript或表单来进行客户端与服务器之间的数据传递和修改~
    宠辱不惊,看庭前花开花落。去留无意,望天上云卷云舒。
    2009年7月14日 2:16
    版主
  • 你好,如果控件没有runat="server",对于服务器来说就是这个不变的字符串常量,不会修改,客户端怎么来,就怎么回去客户端!
    邹俊才
    2009年7月14日 9:38
    版主
  • 服务端不可能控制客户端,除非用脚本;
    大其心,可容天下之物; 虚其心,可受天下之善;
    2009年7月14日 14:32
  • 如果不想用服务器端控件的形式修改图片的属性,建议还是用客户端的js进行修改

    document.getElementById("1").src="2.jpg"
    我的博客,最近新写了一个Windows Mobile 6.5 Widget开发的文章,欢迎捧场
    尽力回答每一个问题,但不代表一定正确,希望初学者能够多自己尝试。。共勉。。:)
    2009年7月15日 2:54
    版主