我有一个cfselect,它使用ajax代理绑定到查询。 我做了更新并添加了与cfselect相对应的新值 在我的cfwindow 我希望用户始终获得最新和更新的列表 cfselect。是否有一个我可以在onclick和intern中调用的函数将刷新cfselect。 请帮忙!!!
答案 0 :(得分:1)
Arasu,
我也有类似的场景需要处理,这是一个很大的巧合。不过就是这样。
解决方案是:ColdFusion.Bind.assignValue(,,)
我有一个与查询绑定的cfselect。与我的绑定查询关联的值将在我的网站的另一个页面中更新(在您的情况下为cfwindow)。所以我也需要我的用户在每次选择时都在cfselect中获取最新的值集。所以这就是魔术。我在我的cfselect的onClick中调用ColdFusion.Bind.assignValue(,,),其中:
name:要绑定的控件名称(此处为cfselect名称)
属性名称:用于将值分配给
的控件的属性function:负责将数据绑定到控件的函数。
我的代码是:
<cfform style="align:centre" id="frm_drpDwnBus" name="frm_drpDwnBus">
<cfinput name="hdnrr" value="#rrSbstring#" type="hidden">
<cfselect name="dpDwnBs" bindOnLoad="true"
bind="cfc:getCalculatorData.getAllBus(hdnrr.value)"
value="busType_id_pk"
display="busType_name"
queryposition="below" onclick="javascript:refresh(hdnrr.value)" >
<option value="0" on>Select a Bus</option>
</cfselect>
</cfform>
我的javascript代码是:
<cfajaxproxy cfc="Calculator.getCalculatorData" jsclassname="cfcCalcu">
var dataCalcu= new cfcCalcu();
function refresh(s)
{
ColdFusion.Bind.assignValue('dpDwnBs','value', dataCalcu.getAllBus(s))
}
现在我建议你做的是在cfwindow代码中完成任何更新/删除后调用'refresh'功能。这会更新你的cfselect绑定。