如何在下面的程序中检索冒号前的值

时间:2013-07-09 21:16:04

标签: javascript

这是我在HTML中的select标签 我正在重新获得如下所示的价值

有人请告诉我怎样才能在Colon(:)之前检索值 例如,如果它是200:Java编程语言我只需要200作为值

<select name = "book" id="selSeaShells">
  <option></option>
  <option value = "100:C programming language">C programming language</option>
  <option value = "200:Java programming language">Java programming language</option>
</select>

function myFunction() {
    var quantityvalue = document.getElementById("quan").value;
    var selObj = document.getElementById('selSeaShells');
    var optionselectedvalue;
    var optionselectedtext;

    for (i = 0; i < selObj.options.length; i++) {
        if (selObj.options[i].selected) {
            optionselectedvalue = selObj.options[i].value;
        }
    }
}

3 个答案:

答案 0 :(得分:2)

在您的示例中,您可以执行

optionselectedvalue.split(':')[0]

A demo here

答案 1 :(得分:1)

您可以使用jquery或常规javascript命令从中获取值。

然后使用值split函数在字符串值.split(":")上使用此代码,它返回一个数组,您将需要第一个索引,因此要放在字符串上的总代码是{{1 }}。

如果您想将其作为数字,请使用结果上的.split(":")[0]parseInt函数。

答案 2 :(得分:1)

归功于Karthikr。 这是一个很好的答案 我想补充一点,您可以通过使用selectedIndex来摆脱for循环并提高代码的性能。

var optionselectedvalue = selObj.options[selObj.selectedIndex].value;

这是一个jsbin demonstrating it(Karthikr的回答也在垃圾箱里)