2012-08-01 86 views
0

我有2個單選按鈕組。這兩個按鈕是radioGroupLoanType和radioGroupLoanType。加載選項後設置單選按鈕組的值?

radioGroupLoanType的選項將根據radioGroupLoanType中的選項而改變。這很好。

如果只有一個選項,那麼radioGroupLoanType的click事件設置radioGroupLoanType的值。似乎正在發生的事情是,只有每隔一次點擊才能確定價值。如果我在選擇上點擊兩次,則設置適當的值。

我懷疑發生了什麼是radioGroupLoanType的選擇沒有被設置時的值設置。我可以通過使用@DbColumn而不是@DbLookup爲radioGroupLoanType創建一個常量值列表來證明這一點。

有關如何做到這一點的任何其他想法?

<xp:br></xp:br> 

<xp:br></xp:br> 
<xp:radioGroup id="radioGroupLoanType" layout="pageDirection"> 



    <xp:eventHandler event="onclick" submit="true" 
     refreshMode="complete"> 
     <xp:this.action><![CDATA[#{javascript:var key = getComponent("radioGroupLoanType").getValue(); 
    if (key == null) return; 

var val = @DbLookup("","vwRateTypesByLoanTypesOrder",key,"RateName"); 
if (@IsError(val) || val.constructor == Array) 
{ 
getComponent("radioGroupRateReq").setValue(""); 

} 
else 
{ 
getComponent("radioGroupRateReq").setValue(val); 


} 
}]]></xp:this.action> 
    </xp:eventHandler> 



    <xp:selectItems> 
     <xp:this.value><![CDATA[#{javascript:@DbColumn("","vwLoanTypesByOrder",2)}]]></xp:this.value> 
    </xp:selectItems> 
</xp:radioGroup><xp:br></xp:br> 
<xp:br></xp:br><xp:radioGroup id="radioGroupRateReq" layout="pageDirection" styleClass="PNCText"> 
       <xp:selectItems> 
        <xp:this.value><![CDATA[#{javascript:var key = getComponent("radioGroupLoanType").getValue(); 
var val = @DbLookup("","vwRateTypesByLoanTypesOrder",key,"RateName"); 
return (@IsError(val) || val == "") ? @DbColumn("","vwRateTypesByOrder",2) : val; 
}]]></xp:this.value> 
       </xp:selectItems> 

      </xp:radioGroup> 
+0

我看到似乎正在發生的事情。在onClick事件中,radioGroupLoanType值尚未更改。但是,只有當我在第二個單選按鈕組上設置值時。我被告知onSelect在IE中不起作用,而這正是我需要的。 – 2012-08-01 18:37:06

回答

0

我得到這個範圍變量的工作。 radioGroupLoanType的onCLick事件設置radioGroupRateReq的選項並設置值。 radioGroupRateReq使用範圍變量中的選擇。

有關如何做到這一點的更好的想法?

相關問題