下拉菜单,手动写入,并自动转换为逗号分隔的数字



我使下拉列表中传递整数值,但现在我必须使下拉列表中我手动编写的数字和我自动编写的逗号分隔的数字,但传递到后端的值是没有逗号分隔的数字。我的观点:

<select asp-for="Input.price" placeholder="Please Select price" style="height:50px; border-style:solid ;border-color: black;border-radius:5px; margin-left:20px;">
<option value="" hidden>Select Price</option>
<option value="500000">5,00,000 RS</option>
<option value="1000000">10,00,000 RS</option>
<option value="1500000">15,00,000 RS</option>
<option value="2000000">20,00,000 RS</option>
<option value="2500000">25,00,000 RS</option>
<option value="3000000">30,00,000 RS</option>
<option value="3500000">35,00,000 RS</option>
<option value="4000000">40,00,000 RS</option>
<option value="4500000">45,00,000 RS</option>
<option value="5000000">50,00,000 RS</option>
<option value="5500000">55,00,000 RS</option>
<option value="6000000">60,00,000 RS</option>
<option value="6500000">65,00,000 RS</option>
<option value="7000000">70,00,000 RS</option>
<option value="7500000">75,00,000 RS</option>
<option value="8000000">80,00,000 RS</option>
<option value="8500000">85,00,000 RS</option>
<option value="7000000">70,00,000 RS</option>
<option value="7500000">75,00,000 RS</option>
<option value="8000000">80,00,000 RS</option>
<option value="8500000">85,00,000 Rs</option>
</select>

可能是数据列表与隐藏字段的组合

如果您有权限,当然也可以在后端更改它。你仍然需要做适当的输入清理。

注意,转换需要将货币符号放在预期的位置。在数据列表的数字前面

const num2rs = val => val.toLocaleString('en-IN', {
maximumFractionDigits: 0,
style: 'currency',
currency: 'INR'
});
document.getElementById("rsInput").addEventListener("input", function() {
this.value = num2rs(+this.value.replace(/D/g,""))
document.getElementById("Input.price").value = this.value.replace(/D/g,"")
})
<!-- make this type="hidden" and remove the br -->
<input type="text" name="Input.price" id="Input.price" /><br/>
<!-- Hidden field above-->
<input list="Input.price.list" id="rsInput" placeholder="Please Select price"> 
<datalist id="Input.price.list">
<option value="₹5,00,000">
<option value="₹10,00,000">
<option value="₹15,00,000">
<option value="₹20,00,000">
<option value="₹25,00,000">
<option value="₹30,00,000">
<option value="₹35,00,000">
<option value="₹40,00,000">
<option value="₹45,00,000">
<option value="₹50,00,000">
<option value="₹55,00,000">
<option value="₹60,00,000">
<option value="₹65,00,000">
<option value="₹70,00,000">
<option value="₹75,00,000">
<option value="₹80,00,000">
<option value="₹85,00,000">
<option value="₹70,00,000">
<option value="₹75,00,000">
<option value="₹80,00,000">
<option value="₹85,00,000">
</datalist>

相关内容

  • 没有找到相关文章

最新更新