Javascript indexOf ('₹' ) 用于印度卢比字符等,不起作用

标签 javascript

我的网页上有一个带有以下格式的选项文本的下拉列表-(₹ 呈现印度卢比字符)

<option value = "101">Notebook (&#8377;25)</option>
<option value = "102">Pen (&#8377;5)</option>

在 Javascript 函数中,我获取选项文本并尝试使用子字符串和 indexOf 从中仅提取价格。

var optionString = $('#stationeryList').find('option:selected').text();//这是“Pen (₹5)”

alert(optionString.indexOf('&#8377;'));  // returns -1

如何处理?

最佳答案

您可以使用以下正则表达式提取金额:

var value = "Pen (₹5)";
var amountMatcherRegex = new RegExp('.*\\(' + String.fromCharCode(8377) + '(\\d+)\\)','g');
var matches = amountMatcherRegex.exec(value);
if(matches && matches[1]) {
     alert(matches[1]);
}

关于Javascript indexOf ('&#8377;' ) 用于印度卢比字符等,不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32798673/

相关文章:

javascript - 为什么这个 javascript if 条件没有按预期工作?

javascript - 在嵌套对象中继承此范围

JavaScript - 删除字符之前的所有内容(包括字符)

javascript - Ember 模型和 SQL - 在服务器上或通过 Ember 关系连接表?

javascript - 无法将 json 数据传递给 Ajax 函数

javascript - Javascript中的全局变量,返回错误值

javascript - 隔离范围变量在链接函数内未定义

javascript - 插入内联 HTML 或创建新元素更快吗?

javascript - webkit 背景上的 Jquery.animate()

javascript - 这个 javascript 片段是如何工作的?