web2py: <body>-标签属性
web2py: <body>-Tag Attributes
我需要为 body-tag 指定一个属性,如下所示:
<body onresize="window.location.href=window.location.href">
我当然可以在相应的视图中这样做。但是后来我在生成的 HTML 代码中有两个开始的正文标签。 HTML 代码有效,但不符合给定标准。
因此,我的问题是,如果有指定属性的方法,它会包含在生成的响应正文标签中。
感谢大家的支持!
好的,我找到了解决方案……只要你想,一切都很简单;-)
由于 body-tag 源自扩展 "layout.html" {{extend 'layout.html'}} 可以在那里更改 body-tag。如果不需要所有视图都具有 onresize 属性,则可以对 "layout.html" 进行适配,例如 "layout-onresize.html" 用于此特殊目的。
在 "layout.html" 视图中,您可以这样做:
<body{{=XML(' onresize="window.location.href=window.location.href"') if response.resizable_body else ''}}>
然后在模型或控制器中,你可以这样做:
response.resizable_body = True
或者在视图中(注意,resizable_body
属性在 扩展布局之前设置 :
{{response.resizable_body = True}}
{{extend 'layout.html'}}
在任何时候都不需要将 response.resizable_body
显式设置为 False
,因为默认情况下 response.resizable_body
只是 None
(response
是一个 Storage
对象,因此当您尝试访问一个不存在的属性时,它只会产生 None
).
我需要为 body-tag 指定一个属性,如下所示:
<body onresize="window.location.href=window.location.href">
我当然可以在相应的视图中这样做。但是后来我在生成的 HTML 代码中有两个开始的正文标签。 HTML 代码有效,但不符合给定标准。
因此,我的问题是,如果有指定属性的方法,它会包含在生成的响应正文标签中。
感谢大家的支持!
好的,我找到了解决方案……只要你想,一切都很简单;-)
由于 body-tag 源自扩展 "layout.html" {{extend 'layout.html'}} 可以在那里更改 body-tag。如果不需要所有视图都具有 onresize 属性,则可以对 "layout.html" 进行适配,例如 "layout-onresize.html" 用于此特殊目的。
在 "layout.html" 视图中,您可以这样做:
<body{{=XML(' onresize="window.location.href=window.location.href"') if response.resizable_body else ''}}>
然后在模型或控制器中,你可以这样做:
response.resizable_body = True
或者在视图中(注意,resizable_body
属性在 扩展布局之前设置 :
{{response.resizable_body = True}}
{{extend 'layout.html'}}
在任何时候都不需要将 response.resizable_body
显式设置为 False
,因为默认情况下 response.resizable_body
只是 None
(response
是一个 Storage
对象,因此当您尝试访问一个不存在的属性时,它只会产生 None
).