如何在
之前或之后用逗号删除匹配的字符串前:
<input value="1,2,3,4,5,6,7,8,9,10">
jQuery:
var input = $("input");
var val = input.val();
var random = Math.ceil(Math.random() * 10);
var new_val = val.replace(random,"");
input.val(new_val);
值看起来不像1-10(这是一个例子)
如何在之前或之后删除comman的问题?
考虑匹配的字符串是否具有第一个位置和最后一个位置。所以这是问题
PS:我必须通过字符串找到,而不是索引或其他东西
游乐场:http://jsbin.com/ulikof/1/edit
任何?
答案 0 :(得分:2)
如果添加,则在选择随机数时添加尾随逗号,它将删除单个逗号并正确显示:
var input = $("input");
var val = input.val();
var random = Math.ceil(Math.random() * 10);
if(val.indexOf(random) != 0) {
random = ',' + random;
}
else {
random = random + ',';
}
var new_val = val.replace(random,"");
input.val(new_val);
答案 1 :(得分:1)
这是一种使用纯JS的通用方法,您可以在不更新代码的情况下添加任意数量的数字。
var input = document.getElementsByTagName('input')[0], // [0] or loop through inputs
val = input.value,
arr = val.split(','),
len = arr.length,
random = Math.ceil(Math.random() * len);
for(var i = 0; i < len; i++) {
if(parseInt(arr[i]) == random) {
var j = i;
}
};
arr.splice(j, 1);
input.value = arr.join(',');