例如,我只想获得最后的ID我该怎么做?
<html>
<head>
<script>
function ()
}
var userInput = document.getElementById("1").value;
window.alert("Your id is " + userInput
{
</script>
</head>
<body>
<input id="1" type="text" value="my id is 1743876">
</body>
<html>
&#13;
答案 0 :(得分:1)
document.getElementById("1").value.split(' ').pop();
应该这样做。
split(' ')
使用您传递的分隔符将字符串分解为字符串数组(在本例中为空格:' '
)。
pop()
返回数组的最后一个元素。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/pop
正如Gary所说,对于更复杂的需求,你应该使用像match()
这样的正则表达式函数。
var matches = document.getElementById("1").value.match(/(\d+)/);
matches[0]; // contains the match
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match
答案 1 :(得分:0)
要从字符串值中提取id,您应该使用正则表达式。
如果你知道ID中确切的数字/数字,你可以使用像这样的正则表达式/\b\d{11}\b/g
var userInput = document.getElementById("1").value.match(/\b\d{11}\b/g);
如果你知道ID会在9到11位之间变化,你可以使用像这样的正则表达式/\b\d{9,11}\b/g
var userInput = document.getElementById("1").value.match(/\b\d{9,11}\b/g);
因此ID在字符串中的位置无关紧要,您将始终获得它。