Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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
Javascript 使用Ajax.InPlaceCollectionEditor动态更新自动选择值选项_Javascript_Ajax_Prototypejs_Scriptaculous - Fatal编程技术网

Javascript 使用Ajax.InPlaceCollectionEditor动态更新自动选择值选项

Javascript 使用Ajax.InPlaceCollectionEditor动态更新自动选择值选项,javascript,ajax,prototypejs,scriptaculous,Javascript,Ajax,Prototypejs,Scriptaculous,我正在使用Scripaculous的就地集合编辑器向用户提供一个客户列表,以便动态地分配给联系人。我正在传递一个值参数,如中所述,因此当生成选择时,它将自动选择当前关联的客户(如果尚未提供默认值) 除非用户第二次单击“编辑我”字段时选择的是原始值,而不是最近选择的客户,否则此操作效果良好。这是因为对InPlaceCollectionEditor的原始调用没有更改。我的问题是是否有任何方法可以在不动态更新整个scriptaculous调用的情况下更新autoselect值这意味着通过ajax再次选

我正在使用Scripaculous的就地集合编辑器向用户提供一个客户列表,以便动态地分配给联系人。我正在传递一个值参数,如中所述,因此当生成选择时,它将自动选择当前关联的客户(如果尚未提供默认值)

除非用户第二次单击“编辑我”字段时选择的是原始值,而不是最近选择的客户,否则此操作效果良好。这是因为对InPlaceCollectionEditor的原始调用没有更改。我的问题是是否有任何方法可以在不动态更新整个scriptaculous调用的情况下更新autoselect值这意味着通过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调用的情况下更新autoselect值?何时更新autoselect值,从何处更新?正如我所说的,如果您使用一个可能的全局变量而不是硬编码的值,那么您可以在进行ajax调用之前随时设置它。如果只想设置所选选项,则必须访问select元素并将其设置为selectedIndex proerty。