Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.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
如何使inputText提前键入值像jsf/bootsfaces中的按钮一样可单击?_Jsf_Bootsfaces - Fatal编程技术网

如何使inputText提前键入值像jsf/bootsfaces中的按钮一样可单击?

如何使inputText提前键入值像jsf/bootsfaces中的按钮一样可单击?,jsf,bootsfaces,Jsf,Bootsfaces,我有一个输入文本,前面有输入,用户可以输入一个作业类,并显示一个下拉列表,然后他们点击选择-它填充数据。但是,我想做的不是选择按钮,而是在我的inputText上放一个onclick或其他东西,当下拉列表显示时,用户点击下拉值,它可以填充它使用我的按钮所做的数据。谢谢你的帮助 这是我的密码: <h:form> <b:inputText id = "inputName" value = "#{myBean.currentJob

我有一个输入文本,前面有输入,用户可以输入一个作业类,并显示一个下拉列表,然后他们点击选择-它填充数据。但是,我想做的不是选择按钮,而是在我的inputText上放一个onclick或其他东西,当下拉列表显示时,用户点击下拉值,它可以填充它使用我的按钮所做的数据。谢谢你的帮助

这是我的密码:

           <h:form>

              <b:inputText id = "inputName"  value = "#{myBean.currentJobSelected}" typeahead="true" typeahead-values="#{myBean.cPaySearchList}"
                           placeholder="e.g. Apple" required="true" ajax="true" >


             <f:ajax render=":dTable" />


                </b:inputText>

          <b:commandButton action="#{myBean.getAllMethods}" update=":dTable"  value= " Select" >

              <f:ajax execute="inputName" render=":dTable" />

          </b:commandButton>




            </h:form> 

如果我没弄错的话,你在找这样的东西:

<b:remoteCommand name="onValueSelected" actionListener="#{myBean.myMethod}" update=":dtable" />
<script> 
$('#inputName').on('itemAdded', function(event) {
  onValueSelected();
});
</script>

但是,我建议使用CSS类而不是ID。JSF修改ID,因此,在jQuery表达式中使用CSS类更简单,即$'.job selected'而不是$'inputName'-另外,您需要将class=job selected添加到.

您可以尝试如果-如果他们单击下拉值时需要执行另一个操作,您可以创建一个远程命令并从JavaScript调用它(如果需要)通过那里触发一个事件你能告诉我一些方法吗?感谢不要将remoteCommand嵌套到inputText中。除此之外,你可以自由地将它移动到最适合你的地方。从语义上讲,它属于inputText,所以我把它放在inputText之前或之后的行中。