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

js中${name}永远取值input输入框的初始值,为什么?
<script type="text/javascript">
   $().ready(
              $("#name").blur(
                           function(){
                                     var newNameValue = $("#name").val();
                                     var oldNameValue = '${name}';
                                     alert( newNameValue +", " + oldNameValue );
                            }
                );
   );
</script>

<s:textfield id="name" name="name"></s:textfield>


说明:
如果name输入框的原始值是"aaa",那么不论后面如何修改值(如变为"bbb")
${name}的值永远为"aaa"。

我想知道这是为什么,是什么原理?








------解决方案--------------------
var oldNameValue = '${name}';这个应该是服务器端的el表达式。如果你服务器端送过来的name变量的值是aaa,那么你这个oldNameValue 永远是'aaa'