1
我正在使用Scripaculous'就地收集编辑器来向用户列出要动态分配给联系人的客户列表。我传递了一个值参数,详见documentation,所以当选择生成时,它将自动选择当前关联客户(如果没有一个已经提供了默认设置)。使用Ajax.InPlaceCollectionEditor动态更新自动选择值选项
这很适用,除非用户第二次选择原始值时点击“编辑我”字段,而不是最近选择的客户。这是因为原来对InPlaceCollectionEditor的调用没有改变。我的问题是,是否有任何方法来更新自动选择值而不动态更新整个scriptaculous调用(这意味着通过ajax再次选择所有的客户,这可能但不是理想的。)
这里是代码:
<div id="editme">Test 1</div>
<script type="text/javascript">
new Ajax.InPlaceCollectionEditor(
'editme',
'/usercustomer/editCustomer/id/811',
{ collection: [['192981', "Test 1"],['192893', "Test 2"],['192894', "Test 3"] ... ],
ajaxOptions: {method: 'get'}
, value: 192893 } // specifying the value parameter auto selects object id 192893
);
</script>
这是InPlaceCollectionEditor的限制还是有其他解决方法?
Ajax.InPlaceCollectionEditor调用正在更新div id“editme”,而不是上面代码中所示的ajax.InPlaceCollectionEditor调用的参数在div之外。正如我所提到的“我的问题是,是否有任何方法来更新自动选择值,而不动态更新整个scriptaculous调用” – markb
什么时候你想更新自动选择值?正如我所说的,如果您使用(可能是全局的)变量而不是硬编码值,则可以在您进行ajax调用之前随时设置它。如果您只想设置选定的选项,则必须访问select元素并将其设置为selectedIndex proerty。 –