首页 > 代码库 > javascript和<c:out value=http://www.mamicode.com/""/>的结合使用
javascript和<c:out value=http://www.mamicode.com/""/>的结合使用
当你和数据库交互数据的时候,我们可能在一个字段里存了很多信息,并且使用符号分隔开来,那么怎样才能分别得到每一段的信息呢?
比如说当你分期付款的时候,可能分好几个期次,那么我们应该怎么将他们分隔开,并且在现实的时候显示出已经选中的:
<input type="checkbox" name="stage1" id="stagei1" value=http://www.mamicode.com/‘1期‘ type="checkbox" name="stage2" id="stagei3" value=http://www.mamicode.com/‘3期‘ type="checkbox" name="stage3" id="stagei6" value=http://www.mamicode.com/‘6期‘ type="checkbox" name="stage4" id="stagei12" value=http://www.mamicode.com/‘12期‘ type="checkbox" name="stage5" id="stagei24" value=http://www.mamicode.com/‘24期‘ onclick="check(this,‘checkbox33‘,‘24‘)"/>24期
上面这段表示分期的checkbox。
当你从数据库得到数据的时候,可以通过<c:out value=""/>得到,这个时候可以用隐藏表单域,使页面美观。而且数据也会记录在表单域中,这样也方便提取。
<input type="hidden" id="inputid" name="bill" value=http://www.mamicode.com/‘
当我们选择了多个期数的时候(这里的期数使用的是数字1、3、6、12、24表示,并且用逗号分隔开。如:1,3)
那么一段字符串怎么样得到并分割呢?
可以直接把<c:out value=""/>的数据复制给一个变量,用split进行分割,可以加一段字符串验证一下
<script language=Javascript > function checkstage(){ var bill =‘<c:out value="http://www.mamicode.com/${form.stage}"/>‘; var list =bill. split(‘,‘ ); for(var i=0 ;i< list.length ;i++){ if(!isStringNull (list[i])) document.getElementById ("stagei"+list[i] ).checked= true; } } </script>
这样当你选择多个的时候,也会显示出你选择的;别忘了在body里面加载onload="checkstage();"
上面if里面的判断是否为空的函数是我写在一个js文件里的,如下:
/** * 是否为空 * @param {Object} v * @return {TypeName} */ function isStringNull(v){ if(v == null || v.replace(/\s/g, "") == ‘‘){ return true; }else{ return false; } }
希望对大家有帮助!!!
本文出自 “my dream fly on the sky” 博客,请务必保留此出处http://7915791.blog.51cto.com/7905791/1410622
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。