Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.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
Javascript JSF/PrimeFaces客户端输入操作_Javascript_Jquery_Jsf_Primefaces_Client Side - Fatal编程技术网

Javascript JSF/PrimeFaces客户端输入操作

Javascript JSF/PrimeFaces客户端输入操作,javascript,jquery,jsf,primefaces,client-side,Javascript,Jquery,Jsf,Primefaces,Client Side,我有一个JSF/PrimeFaces页面,其中包含从托管bean中的值填充的项。它的项目实际上是简单语句中描述的示例查询,以帮助用户评估系统 <p:selectOneMenu id="sampleQueryInput"> <f:selectItems value="#{bean.sampleQueries}" var="sampleQuery" itemLabel="#{sampleQuery.title}" itemValue="#{sampleQuery.query

我有一个JSF/PrimeFaces页面,其中
包含从托管bean中的值填充的项。它的项目实际上是简单语句中描述的示例查询,以帮助用户评估系统

<p:selectOneMenu id="sampleQueryInput">
    <f:selectItems value="#{bean.sampleQueries}" var="sampleQuery" itemLabel="#{sampleQuery.title}" itemValue="#{sampleQuery.query}" />
</p:selectOneMenu>

当用户从
中选择样本查询时,我想将所选的
sampleQuery.query
插入另一个
。文本区域保存要发送的实际查询,最终用户应可编辑该查询。我在PrimeFaces用户指南中没有找到关于客户端API的足够信息,我不知道是应该使用PF客户端API还是编写自己的javascript来处理这个问题。我该怎么做?我正在使用PrimeFaces 3.3.1。

使用:

callJavaScriptFunction
中,您可以通过其ID获取所选项目,即
sampleQueryInput
,并将值放入
InputExtArea
,使用:


callJavaScriptFunction
中,您可以通过ID获取所选项目,即
sampleQueryInput
,并将值放入
inputTextarea

p:selectOneMenu
onchange
中尝试类似的操作(编写一个简单的js函数并调用它)


p:selectOneMenu
onchange
中尝试类似的操作(编写一个简单的js函数并调用它)


使用纯JavaScript获取textarea上的选定值。谢谢。如果服务器端操作没有选择余地,恐怕我不得不这么做。当所选查询发生更改时,我暂时在托管bean上触发一个方法,并将其插入textarea。当资源位于客户端时,无需转到服务器。您只需要检查HTML生成的代码,看看如何获得所选的值。如果这是一个很大的工作,那么保持ajax的方式。使用纯JavaScript获取textarea上的选定值。谢谢。如果服务器端操作没有选择余地,恐怕我不得不这么做。当所选查询发生更改时,我暂时在托管bean上触发一个方法,并将其插入textarea。当资源位于客户端时,无需转到服务器。您只需要检查HTML生成的代码,看看如何获得所选的值。如果这是一个很大的工作,那么保持ajax的方式。
var selectedVal = jQuery("[id$='sampleQueryInput']").find("select").val();
jQuery("#IdOfInputTextarea").text(selectedVal);//maybe it should be jQuery("#IdOfInputTextarea").val(selectedVal); , not sure