是否可以在Javascript中的Select选项上附加项目数量?

是否可以在Javascript中的Select选项上附加项目数量?,javascript,html,Javascript,Html,以下是我的选择选项:- 胡萝卜-3 黄瓜-2 因此,您可以使用多种内置函数来实现这一点。我个人会使用split和parseInt创建以下代码: <html> <body> <select size="5"> <option onclick="myFucntion()" id="item">Carrot - 3</option> <option>Cucumber - 2</option> </select

以下是我的选择选项:-


胡萝卜-3
黄瓜-2

因此,您可以使用多种内置函数来实现这一点。我个人会使用split和parseInt创建以下代码:

<html>
<body>
<select size="5">
<option onclick="myFucntion()" id="item">Carrot - 3</option>
<option>Cucumber - 2</option>
</select>
<script>
function myFucntion(){
    var str=document.getElementById("item").innerHTML;
    str=str.split(" ");
    res=parseInt(str[2]);
    res++;
    document.getElementById("item").innerHTML="Carrot - "+res;
}
</script>
</body>
</html>

胡萝卜-3
黄瓜-2
功能myfuction(){
var str=document.getElementById(“item”).innerHTML;
str=str.split(“”);
res=parseInt(str[2]);
res++;
document.getElementById(“item”).innerHTML=“Carrot-”+res;
}

我不确定我是否理解您想要做什么,但我相信您希望这样做。

因此,您可以使用大量内置函数来完成此操作。我个人会使用split和parseInt创建以下代码:

<html>
<body>
<select size="5">
<option onclick="myFucntion()" id="item">Carrot - 3</option>
<option>Cucumber - 2</option>
</select>
<script>
function myFucntion(){
    var str=document.getElementById("item").innerHTML;
    str=str.split(" ");
    res=parseInt(str[2]);
    res++;
    document.getElementById("item").innerHTML="Carrot - "+res;
}
</script>
</body>
</html>

胡萝卜-3
黄瓜-2
功能myfuction(){
var str=document.getElementById(“item”).innerHTML;
str=str.split(“”);
res=parseInt(str[2]);
res++;
document.getElementById(“item”).innerHTML=“Carrot-”+res;
}

我不确定我是否理解您想要做什么,但我相信您希望这样做。

您可以对所选
选项的
textContent
元素使用
replace
,使用正则表达式提取数字部分,然后使用
replace
的回调函数注入更新后的号码

下面是一个演示:

功能调整计数(差异){
var sel=document.getElementById('listboxstock');
如果(sel.selectedIndex<0)返回;//未选择任何内容
var opt=sel.options[sel.selectedIndex];
opt.textContent=opt.textContent.replace(/\d+/,函数(m){
返回Math.max(0,+m+diff);//调整,但不低于0
});
}
document.getElementById('inc').addEventListener('click',adjustCount.bind(null,1));
document.getElementById('dec').addEventListener('click',adjustCount.bind(null,-1))

胡萝卜-3
黄瓜-2

添加
删除
您可以在所选
选项
元素的
文本内容
上使用
替换
,使用正则表达式提取数字部分,然后使用
替换
的回调函数注入更新的数字

下面是一个演示:

功能调整计数(差异){
var sel=document.getElementById('listboxstock');
如果(sel.selectedIndex<0)返回;//未选择任何内容
var opt=sel.options[sel.selectedIndex];
opt.textContent=opt.textContent.replace(/\d+/,函数(m){
返回Math.max(0,+m+diff);//调整,但不低于0
});
}
document.getElementById('inc').addEventListener('click',adjustCount.bind(null,1));
document.getElementById('dec').addEventListener('click',adjustCount.bind(null,-1))

胡萝卜-3
黄瓜-2

添加 删除
给您

$(“#添加选项”)。在(“单击”上,函数(e){
var newOption=$(“#optionText”).val();
var选项={};
var指数=0;
$(“#listboxstock option”)。每个(函数(){
调试器;
var valueComponents=$(this.val().split(“-”);
if(valueComponents[0]==newOption){
var number=parseInt(valueComponents[1]);
数字++;
$(this).val(valueComponents[0]+“-”+数字);
}
选项[“选项”+索引]=$(this.val();
索引++;
});
var$el=$(“#listboxstock”);
$el.find('选项')
.删除()
.end();
//控制台日志($el);
$。每个(选项、功能(键、值){
$el.append($(“”+value+“”));
});
});

胡萝卜-3
黄瓜-2
添加选项
在这里

$(“#添加选项”)。在(“单击”上,函数(e){
var newOption=$(“#optionText”).val();
var选项={};
var指数=0;
$(“#listboxstock option”)。每个(函数(){
调试器;
var valueComponents=$(this.val().split(“-”);
if(valueComponents[0]==newOption){
var number=parseInt(valueComponents[1]);
数字++;
$(this).val(valueComponents[0]+“-”+数字);
}
选项[“选项”+索引]=$(this.val();
索引++;
});
var$el=$(“#listboxstock”);
$el.find('选项')
.删除()
.end();
//控制台日志($el);
$。每个(选项、功能(键、值){
$el.append($(“”+value+“”));
});
});

胡萝卜-3
黄瓜-2

添加选项
如何添加项目?对于第一个问题,是的,您可以这样做,第二个问题是在选择
如何添加项目中使用Google
javascript更改选项文本,而不显示您迄今为止的尝试。对于第一个问题,是的,您可以这样做,第二种方法是在不显示您迄今为止尝试过的内容的情况下扩展选择中的Google
javascript更改选项文本,这正是我想要的。。。非常感谢兄弟:)这正是我想要的。。。非常感谢,伙计:)