Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过ajax重新加载JavaScript函数/重新读取JSFbean值_Javascript_Ajax_Jsf - Fatal编程技术网

通过ajax重新加载JavaScript函数/重新读取JSFbean值

通过ajax重新加载JavaScript函数/重新读取JSFbean值,javascript,ajax,jsf,Javascript,Ajax,Jsf,我有一个JavaScript函数,它使用来自支持bean的值,比如varx=#{bean.value} 在页面加载时,x的值是最终值,直到重新加载页面为止(因为EL被其实际值字符串替换) 但是,bean的值可能会因ajax请求而改变。 如何实现x的更新 下面是我的xml(使用primefaces的日历组件)的摘录,以澄清: <p:calendar beforeShowDay="highlightDays" ... /> <script> function high

我有一个JavaScript函数,它使用来自支持bean的值,比如
varx=#{bean.value}

在页面加载时,
x
的值是最终值,直到重新加载页面为止(因为EL被其实际值字符串替换)

但是,bean的
值可能会因ajax请求而改变。
如何实现
x
的更新

下面是我的xml(使用primefaces的日历组件)的摘录,以澄清:

<p:calendar beforeShowDay="highlightDays" ... />

<script>
   function highlightDays(){
      var highlightedDays= #{bean.specialDays()};
      // set css...
   }
</script>

函数highlightDays(){
var highlightedDays=#{bean.specialDays()};
//设置css。。。
}

您可以使用RequestContext从bean执行这样的更新:

RequestContext.getCurrentInstance().execute("highlightedDays = " + specialDays());
javascript变量应该在窗口范围内,这意味着您应该在函数范围外定义变量

highlightedDays= #{bean.specialDays()};      
function highlightDays(){
  //make use of the var  
}