STRUTS标签怎么自定义属性 在HTML标签里 <input type="button" a="b" onclick="alert(this.a)" value="test"/>
   这样能输出 b 但是STRUTS标签里直接 a="b" 就会报错  CSDN的各位大大  有无解决办法?

解决方案 »

  1.   

    struts标签是要被编译的,所以只接受它定义了的属性。为什么不直接用  onclick="alert('b')"  ?
      

  2.   

    那就不要用struts的标签,直接用html标签即可。
      

  3.   

    <HTML>标签中的属性就像一般程序语言的保留字一样,这些保留字定义了特定的功能。当你添加的保留字之外的内容,浏览器解析HTML的时候,当作内容显示在页面上,如果写在标签中,无法解析未定义的属性,就当做我们常见的变量来使用而不做页面的显示处理。
    struts的标签就是用Java写的,需要编译,在里面添加一个不存在的属性,当然会出错了 
      

  4.   

    不知道楼主要达到什么目的。楼上的几位讲明了struts的标签是java编写的,是要被服务器解释成html标签的,是有一定的标准规范的,是不可扩展的。
    html的标签是可以扩展的。在html的标签里面你可以随便定义你的自定义属性,并可以赋值,可以用script获取。两个东东是不一样的。
      

  5.   

    呵呵 这个问题好解决   strut中的那些标签都是定义好的了不能随便给它属性你只要把他们分开写不就行了 先<% Strint a="b"%>
     <html:button property="aa" onclick="alert(this.a)" ></html:button>
      
      

  6.   

    "<% Strint a="b"%> "中的
    Strint  是什么??
      

  7.   

    本来想用改那啥.. TLD 吧
     加上2个属性   后来同事说太麻烦.让我自己解决 - - 用一种很肤浅的方式解决了...
      在整个页面的最后
       <script>
       input.setAttribute("a","b");
       </script>
    这样 - -
     很肤浅吧.
       话说哪位给出  怎么改TLD文件的完整例子
      俺给分来着.
       别随便搜一个就帖过来....
      

  8.   

    呵呵,这是松散HTML语言和良好Form格式的问题,Struts标签是要被Java代码来解析的,多了一个未知属性肯定会报错,而Html语言本身就允许动态增加一些表数据的结点。