0

我有以下 javascript 设置方式和位置,因此当它获取数据并在文本框中显示时,它将仅显示数值:

<script type="text/javascript">
function showData($sel){
   var str='';
   document.getElementById("demo").innerHTML;
   for (var i=0;i<sel.options.length;i++){
           str+=(str!='') ? ', '+sel.options[i].value : sel.options[i].value;
       }
   }
   sel.form.selectedFruits.value = str;
}
</script>

我有多个选择下拉列表,它有多个值,例如员工编号和电子邮件,所以我不想在文本框中仅显示员工编号,甚至我也不想从值中删除电子邮件。

它工作正常,除了我想做的:D

4

3 回答 3

2

如果您只想从字符串(或示例中的 html)中获取数字,一个简单的解决方案将是:

var str= document.getElementById(id).innerHTML;
return str.replace(/[^0-9]/ig, '');

看到这个jsfiddle

于 2013-08-23T12:45:11.087 回答
0

如果我正确理解了这一点,请尝试这样的事情

<script type="text/javascript">
function showData($sel){
   var str=[];
   document.getElementById("demo").innerHTML;
   for (var i=0;i<sel.options.length;i++){
           str[i]+=sel.options[i].value.replace(/\D/g, ''); // remove everything except digits
       }
   }
   sel.form.selectedFruits.value = str.join();
}
</script>
于 2013-08-23T12:42:53.997 回答
0
<script type="text/javascript">
function showStaffno(sel){
   var str='';
   document.getElementById("demo").innerHTML;
   for (var i=0;i<sel.options.length;i++){
       if (sel.options[i].selected){
           str+=(str!='') ? ', '+sel.options[i].value.replace(/\D/g, '') : sel.options[i].value.replace(/\D/g, '');
       }
   }
   sel.form.selectedFruits.value = str;
}
</script>
于 2013-08-23T14:01:31.627 回答