从列表框中记录多个选择的Javascript将仅以逗号分隔
我使用的是一个数据库平台,由于一些javascript,我有一个多选列表框。唯一的问题是我需要用“;”而不是“,”分隔这些项目。我将其作为代码中的分隔字符,否则此代码将按预期工作(它存储多个选择) 代码如下:从列表框中记录多个选择的Javascript将仅以逗号分隔,javascript,concatenation,multi-select,Javascript,Concatenation,Multi Select,我使用的是一个数据库平台,由于一些javascript,我有一个多选列表框。唯一的问题是我需要用“;”而不是“,”分隔这些项目。我将其作为代码中的分隔字符,否则此代码将按预期工作(它存储多个选择) 代码如下: var v_state = "[@field:Reason_for_Cancelltaion]" ; var o_state = document.getElementById("EditRecordReason_for_Cancelltaion") ; o_state.multiple
var v_state = "[@field:Reason_for_Cancelltaion]" ;
var o_state = document.getElementById("EditRecordReason_for_Cancelltaion") ;
o_state.multiple = true ;
function f_listbox() {
if ( v_state.indexOf(";") > 0 ) {
for (var i=0 ; i < o_state.options.length; i++ ) {
if(o_state[i].value == v_state) {
o_state.remove(i);
break ;
}
}
var o_st = v_state.split("; ");
for (var j=0 ; j < o_st.length; j++) {
for (var i=0 ; i < o_state.options.length; i++ ) {
if(o_st[j]== o_state.options[i].value){
o_state.options[i].selected = true ;
break ;
}
}
}
}
}
window.onload = f_listbox ;
var v_state=“[@field:Reason_for_cancellation]”;
var o_state=document.getElementById(“EditRecordReason for_Cancelltaion”);
o_state.multiple=true;
函数f_listbox(){
if(v_state.indexOf(“;”)>0){
对于(var i=0;i
非常感谢您的任何帮助
编辑:我应该解释得更好一点,原来的代码有“where the two”;“exist”,我认为简单地交换字符就足够了
这是设计用于Caspio的代码,可以找到文档。如果结果是一个名为“result”的数组,请使用您想要的任何字符将其连接起来:
result.join(';')
如果结果是名为“result”的字符串,请更改指定的字符:
result.replace(', ',';')
这毫无意义。Read
v_state
是一个字符串,所以不清楚您要做什么。您似乎只是想用分号替换逗号?为什么不直接使用string.replace
函数呢?我对Javascript相当陌生,在上面的代码中我需要在哪里添加这些元素?当前脚本只是将结果(目前用逗号分隔)记录到数据库中的“取消原因”字段中。