日期:2014-05-16  浏览次数:20373 次

javascript和java代码之间传值控制方法(原创)

大部分时候,我们的js控制,都是需要java代码里面的赋值来做控制的。

比方我在java代码里面根据判断赋给了一个变量flag的值

紧接着需要用js根据flag这个值来控制页面情况

一般就想能够实现java与js传值这样的功能,而我试了几下,分别用:

JTLS的?? if(<c:out value='${flag}'/> == '1')

和if(document.write(<%=flag%>) == '1')

发现都是不行,结论是应该实现不了传值

于是用了巧妙的方法

其实在需要控制的js代码里面用<%%>来把java的代码(包括要用到的变量)写在js里面就行了,这不就等于在js中用到了java变量吗?

function change(){

<%if(flag == 1){%>

?? document.getElementById('fileFree1').style.display='';
?? document.getElementById('fileFree2').style.display='';
<%}else{%>


?? document.getElementById('filePhone1').style.display='';
?? document.getElementById('filePhone2').style.display='';
<%}%>

1 楼 liveHappy 2010-12-11  
你的想法还真特别啊。
2 楼 ppboyhai 2010-12-11  
我感觉在 js 里面写太多的 java 代码容易污染 js脚本 不容易维护
3 楼 francis.xjl 2010-12-11  
if('<c:out value='${flag}'/> '== '1')

if('<%=flag%>' == '1')

JSP先生成,然后js再执行,是肯定能传入的,你要看一下生成的js代码对不对。你上面两个生成的应该是这样的代码:
if(1 == '1'),你这让js如何处理?
4 楼 ml365 2010-12-11  
francis.xjl 写道
if('<c:out value='${flag}'/> '== '1')

if('<%=flag%>' == '1')

JSP先生成,然后js再执行,是肯定能传入的,你要看一下生成的js代码对不对。你上面两个生成的应该是这样的代码:
if(1 == '1'),你这让js如何处理?



终于可以回复了!刚通过了javae的回复资格测试!呵呵。是这样的,我把我以前百度的博客全部转过来javae的博客来!以上都是我的博客。我忘记了当初如何写的,等我再看一遍在回复您哈!呵呵。
5 楼 ml365 2010-12-11  
ppboyhai 写道
我感觉在 js 里面写太多的 java 代码容易污染 js脚本 不容易维护

终于可以回复了!刚通过了javae的回复资格测试!呵呵。是这样的,我把我以前百度的博客全部转过来javae的博客来!以上都是我的博客。我忘记了当初如何写的,等我再看一遍在回复您哈!呵呵。
6 楼 ml365 2010-12-11  
liveHappy 写道
你的想法还真特别啊。

终于可以回复了!刚通过了javae的回复资格测试!呵呵。是这样的,我把我以前百度的博客全部转过来javae的博客来!以上都是我的博客。我忘记了当初如何写的,等我再看一遍在回复您哈!呵呵。