js中使用s(c)标签
在js或者jquery中使用s标签,其实并不难理解,s标签也只是一个标签而已,当你想象成js+s标签=js+html标签就理解了
例如:
<script type="text/javascript">
var username = '<s:property value="%{user.username}"/>';
var password = '<s:property value="#session.user.password"/>';
var sex = "";
<s:if test="%{user.flag}">
sex= <s:property value="%{user.sex}"/>;
</s:if>
</script>
通过上面的方式,就可以在js中通过s标签直接获得后台数据,不用通过html标签元素中转或者通过ajax了,够简单
PS:
1、在js中使用s标签进行取值,需要将s标签写在单引号或者双引号内部,否则页面会报警告,如果是<s:if>这样的标签就没有限制了,测试的s标签不多,别的问题就不知道了,嘿嘿
2、如果你想在js文件中使用s标签,是取不出来值的,解决办法是:在纯js的<script>标签内部定义变量并进行取值,然后在js文件中引用你定义的变量
再多说一点:
下面这个例子中单引号的使用在于:通过EL表达式取值,如果取出来,则显示;如果出不出来值,则不显示,也不显示null,如果使用${param.reqFormId}==null做判断,永远也不会相等
例如:注意单引号的使用,也可以是双引号
var pageCount='${pagination.pageCount}';
if(pageCount==1){
alert("ok");
}
或者
if(pageCount==‘1’){
alert("ok");
}
注意单引号
var formId='${param.reqFormId}'==''?'0' : '${param.reqFormId}';
在s标签中使用,脚本标签,位置、单、双引号的使用错误与正确的对比(使用tomcat5.0.28以上版本,tomcat5.0.28一下,下面的方式没有错):
错误:
<% String a = request.getAttribute("key").toString(); %>
<s:if test="<%= a.equals("mainMember") %>"' >
。。。。。。。
</s:if>
错误分析:双引号套用双引号指定是不允许的,所以要将脚本标签外层的双引号改为单引号
<% String a = request.getAttribute("key").toString(); %>
<s:if test='<%= a.equals("mainMember") %>’ >
。。。。。。。
</s:if>
采用这样的方式回报:
The method setTest(String) in the type ElseIfTag is not applicable for the arguments (boolean)
意思是:该方法setTest(字符串)类型ElseIfTag中是不适用的参数值(布尔值)
所以再换一种方式:
<% String a = request.getAttribute("key").toString(); %>
<s:if test='"mainMember".equals(<%=a %>)' >
。。。。。。。
</s:if>
ok,不过我感觉这个和上面那个都是获得的boolean值,但是这个却可以了,没明白,反正遇到这样的问题,就是两个字:折腾,折腾单引号与双引号,折腾标签位置,总会成功的
js中使用s(c)标签的更多相关文章
- JS中对获取一个标签的class的方法封一个库
在JS中我们经常会会用到,获取一个标签的id var aId=document.getElementById("id") 现在虽然有getElementsByClassName这个 ...
- 【js】在js中加HTML注释标签的原因?
<script type="text/JavaScript"> <!-- js代码 //--> //就是这句,为什么还要在-->前加上js注释 < ...
- js中构造字符串若放入Grails中gsp的<g:link>标签出错
Grails的ajax使用json格式返回,在js中构造字符串时若放入<g:link>标签,字符串构造就会错误 如下就会发生错误,导致回调函数无法执行 function show(obj) ...
- js中创建html标签、加入select下默认的option的value和text、删除select元素节点下全部的OPTION节点
<pre name="code" class="java"> jsp 中的下拉框标签: <s:select name="sjx&qu ...
- springboot下html的js中使用shiro标签功能
在js中直接使用shiro标签是不行的 比如 下面有个小技巧
- js中如何删除某个元素下面的所有子元素?(两种方法)
js中如何删除某个元素下面的所有子元素?(两种方法) 一.总结 方法一:通过元素的innerHTML属性 元素element.innerHTML=""; 方法二:通过元素的remo ...
- 遇到问题-----JS中设置window.location.href跳转无效(在a标签里或这form表单里)
问题情况 JS中设置window.location.href跳转无效 代码如下: ? 1 2 3 4 5 6 7 8 <script type="text/javascript&quo ...
- 在js中拼接<a>标签,<a>标签中含有onclick事件,点击无法触发该事件
我们在<a>标签中添加事件一般是onclick="editUser()" 这样添加,在html页面上是行的通的 但是如何你是在js中拼接<a>标签并在< ...
- Dev中控件的js事件代码放在form标签中存在问题
Dev中控件的js事件代码放在form标签中会获取不到(head标签中有其他js代码,未验证是否是这个问题)
随机推荐
- 11g RAC日志体系(cluster,database,asm,scan日志,ADRCI工具的使用)
- Understanding postgresql.conf : log*
After loooong pause, adding next (well, second) post to the “series“. This time, I'd like to describ ...
- Python_Day_4(内置函数之篇)
一:内置函数 常用内置函数如下: 1)abs:取一个数字的绝对值 #abs:取绝对值n = abs(-10)print(n) 2)any和all 值为Fslse有:0,None,"" ...
- Linux-HAproxy+Keepalived
HAproxy+++++++++++++Info+++++++++++VIP:192.168.1.222HA-Master IP:192.168.1.117HA-Backup IP:192.168.1 ...
- redis的启动与停止
启动: redis-server /etc/redis/6379.conf 停止:进入src文件目录 redis-cli -a 数据库密码 shutdown
- selenium+python自动化之登录案例
一.登录 1.先打开浏览器 2.打开论坛主页:http://www.hordehome.com/ 3.查找元素之前可以先设置元素等待:implicitly_wait() 4.点登录按钮,弹出登录框 5 ...
- 百度ueditor学习使用
1.下载ueditor解压 2. jsp里存放着开发所用到的jar包,导入项目即可 前端页面代码如下: <center> <form action="" meth ...
- Word快捷键
▲Word快捷键 [F1]键:帮助 [F2]键:移动文字或图形,按回车键确认 [F4]键:重复上一次的操作 [F5]键:编辑时的定位 [F6]键:在文档和任务窗格或其他Word窗格之间切换 [F8]键 ...
- 转:java日志组件介绍(common-logging,log4j,slf4j,logback )
原网址:http://www.blogjava.net/daiyongzhi/archive/2014/04/13/412364.html common-logging common-logging是 ...
- 【python】unittest中常用的assert语句
下面是unittest模块的常用方法: assertEqual(a, b) a == b assertNotEqual(a, b) a != b assertTrue(x) b ...