在js中“使用” el表达式

电脑杂谈  发布时间:2020-05-06 16:27:53  来源:网络整理

el表达式_el表达式判断_el表达式不等于

在谈论相关内容之前,您必须熟悉jsp的操作原理:

el表达式(当使用el表达式直接获取值时el表达式,例如$ {msg},则不需要为msg提供set get方法;但是在获取对象的属性值时,例如user.name,您必须在name属性中提供set get方法)是与jsp相关的概念,它在服务器端执行,然后在服务器端执行后传递给客户端浏览器,执行js在客户端浏览器上,el在执行js之前已经存在. EL,JSTL和其他各种标签在服务器上执行,然后通过网络传输给客户端. 浏览器客户端将在收到js脚本后执行该脚本. 换句话说,当el表达式生效时,js代码仍然是所有文本. 当js有效时,el表达式消失了. 您可以在浏览器中查看源代码,并且会发现el标记$ {}全部消失了,它们都转换为特定值. jsp和js不在平面上,它们无法同时执行,它们没有任何交集. 因此标题中的“使用”一词使用双引号. 不是js实际上使用el表达式,而是el表达式的最终转换值.

类似地,对于在js中“使用” Java代码,这与使用el表达式的原因相同: JSP首先编译Java代码以形成完整的页面,然后将其发送到客户端. 客户端执行. 执行js后,js不再能看到Java代码.

如何在js代码(代码段或js文件中的代码)中获取el表达式的值或java代码的值?可以通过以下方式获得它:

el表达式_el表达式不等于_el表达式判断

jsp文件中的

js获取jsp页面中el表达式的值: var aaa =“ $ {message}”

jsp文件中的

js在jsp页面中获取Java代码的变量值: var aaa =“ <%= JAVA变量名称%>”

el表达式不等于_el表达式_el表达式判断

因此el表达式,首先在jsp文件中: 定义js变量以获取el表达式的值或java代码的值:

Jsp代码

收藏代码

varaaa =“ $ {user.name}”; //获取el表达式的值,此时aaa =“ jack” varnnn =“ <%= Constants.getValue()%>”; //获取Java代码的值,此时nnn =“ 3”

el表达式_el表达式不等于_el表达式判断

然后在其他js代码段或js文件中,您可以直接访问aaa和nnn.

您可能已经注意到,上面的el表达式和Java代码用引号引起来. 这样,无论值是什么类型,它都将转换为字符串. 如果未使用el表达式和Java代码怎么办?见下文:

Jsp代码

收藏代码

el表达式判断_el表达式_el表达式不等于

varaaa = $ {user.name}; //执行js时,代码为varaaa = jack;这时,jack将被视为一个变量,如果js发生,如果全局存在jack变量,则将jack变量的值分配给aaa,否则将报告为未定义的错误varnnn = <%= Constants.getValue()%>; //执行js时代码为varnnn = 3;此时typeof(nnn)是数字类型

因此,如果值是字符串类型,则最好添加引号;如果是数字类型,则可以添加(将其转换为字符串),也可以不添加(数字类型). 参考:

摘要:

el表达式和Java代码不能直接在js文件中使用(浏览器无法识别jsp中的诸如el之类的标签: 返回给客户端的结果是JSP文件执行的结果,并且确实不包含任何JSP语法). 但是el表达式,java代码,js脚本,jstl标记等都可以在jsp文件中使用,因此,如果要使用el expression的值或js代码中的java代码的值,则可以通过这样的桥梁通过jsp文件实现目标!

js是写在jsp文件中的,jsp可以使用的标签(el表达式,jstl标签,java代码等)可以使用,js可以使用; js是作为文件编写的,不能使用任何标签. 没用但是,通常不建议js使用凌乱的jsp标签.

附加:

JSTL核心标记库的使用:

EL表达式:


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-200758-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 常康
        常康

        马云忽悠了太做淘宝卖家亏得一踏糊涂

      热点图片
      拼命载入中...