可以从javascript发送var以在JSTL中使用它c:set?

时间:2016-03-31 08:55:59

标签: javascript jsp jstl

有什么方法可以让我在JavaScript函数中声明一个变量到JSTL标签?

的Javascript

var abc = document.getElementById('asdf').value;

这是JSP:

<input type="hidden" id="asdf" value="onetwothree" />

我希望从JavaScript

声明C:set
<c:set var="ex" value="${abc}" />

使用值“onetwothree”获取"ex"变量的目的。

很抱歉粗略的解释。感谢

2 个答案:

答案 0 :(得分:0)

您无法从Javascript访问JSTL标记,因为这些标记仅存在于服务器端(客户端它们被纯HTML替换)。

您始终可以将javascript var作为请求参数发送,然后使用服务器端。

答案 1 :(得分:0)

你是以其他方式做的。可以使用下面的代码

从javascript访问jsp中声明的变量
<c:set var="ex" value="test" />
<script type="text/javascript">
    var abc = '${ex}';
</script>

但如上所述,其他方式是不可能的

如果您希望根据input框中提供的内容修改DOM,那么我建议使用下面的代码(在javascript中)

var abc = document.getElementById('asdf').value;

// assuming you want to print this value in a label
document.getElementById('mylabel').innerHTML = abc;

简而言之如果您想根据客户端输入对DOM进行任何更改,请通过javascript 执行,而不是依赖于JSP