【问题标题】:How to set value of an input using jQuery?如何使用 jQuery 设置输入值?
【发布时间】:2011-02-19 10:44:29
【问题描述】:

我正在尝试根据从组合框中的选择来更改输入的值,所以用户从组合框中选择“是”,输入应该包含“测试”值而不是 如果用户选择“否”,则输入应为空,“测试”值将从中删除。

我尝试运行以下代码:

<h:inputText id="myInput" value="aaa" styleClass="myInputStyleClass" />  
<h:selectOneMenu id="myComboBox" value="#{bean.boolVal}">  
    <f:selectItem itemLabel="#{m.n}" itemValue="false" />  
    <f:selectItem itemLabel="#{m.y}" itemValue="true" />  
</h:selectOneMenu>  

<rich:jQuery timing="onload" selector="#myComboBox" query="change(  
  function(){   
  if ($(this).val() == true) {  
   $('.myInputStyleClass').val('test');  
  }  
 } )"  />  

在此版本中运行它仍然会出现 javascript 错误“对象不支持此属性或方法”。(当我在组合框中更改选择时)

删除后

if ($(this).val() == true)

条件和附加 { } 第一个 javascript 错误消失了,但是当我在组合框中更改选择时,会出现另一个错误,说“null 是 'null' 或不是对象”。

我不确定是否只有丰富的面孔 jars (3.3.2) 支持这种 jQuery 实现,例如使用“$”和其他方法(可能是一些 jQuery 库被 nedded),这可能是不支持的原因之一在我看来工作。

欢迎您提出有关如何实现此行为的任何想法。

问候, 拉度

【问题讨论】:

  • 您好,感谢您的快速回复,我更改了它但仍然无法正常工作。问候,拉杜

标签: java jquery richfaces


【解决方案1】:

使用if ($(this).val() == 'true'),因为该值将是一个字符串,而不是布尔值,因此比较总是错误的:

js> 'false' == true
false
js> 'true' == true
false

【讨论】:

  • 您好,感谢您的快速回复,好的,这是一个比较问题,可以通过某种方式解决吗?问候,拉杜
【解决方案2】:

尝试替换以下行:

if ($(this).val() == true)

if ($(this).val() == 'true')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-23
    • 2014-01-29
    • 1970-01-01
    • 1970-01-01
    • 2013-04-20
    • 2020-06-20
    • 2011-06-15
    • 2016-04-26
    相关资源
    最近更新 更多