我尝试使用innerHTML来警告字符串拆分的最后一个字符,但是它在警告框中没有显示任何内容。
这是我的代码
Html
<html>
<head>
<title>JavaScript basic animation</title>
<script type="text/javascript">
</script>
<script type="text/javascript" src="myfunction_2.js"></script>
</head> <body>
<div id="target">w3resource </div>
<button onclick="shubham()">click</button>
</body>
</html>
函数
function shubham()
{
var x=document.getElementById('target').innerHTML;
var y=x.split('');
var z=y[0];
var m=y[9];
var n=y[1]
var last=y[y.length-1]
alert(last);
}
如果我将var x作为
var x='w3resource';
但我需要将x值作为
var x=document.getElementById('target').innerHTML;
那么我该怎么做呢?
发布于 2018-06-11 01:08:16
您需要使用textContent而不是innerHTML
。innerHTML
给你实际的超文本标记,包括标记尖括号(<>
),而textContent
只给你文本。
var x=document.getElementById('target').textContent.trim();
发布于 2018-06-11 01:12:01
你的代码就是它应该做的--它提醒#target元素的最后一个字符(在你的例子中是一个空格)。
如果您将<div id="target">w3resource </div>
更改为<div id="target">w3resource</div>
(删除末尾的空格),结果将是'e‘。
如果你想找到最后一个文本字符,你必须使用:
function shubham() {
// Element reference
const element = document.getElementById('target');
// Text without spaces at the beggining and the end
const text = element.innerText.trim();
// Get the last character
const lastCharacter = text[text.length - 1];
// Alert the last character
alert(lastCharacter);
}
<div id="target">w3resource </div>
<button onclick="shubham()">click</button>
发布于 2018-06-11 01:19:12
我看到您在目标div中有一个空格:
<div id="target">w3resource </div>
因此最后一个字符是一个空格,去掉所有的空格就可以了,使用下面的函数:
function shubham3()
{
var x=document.getElementById('target').innerHTML.replace(/ /g,'');
var y=x.split('');
var z=y[0];
var m=y[9];
var n=y[1]
var last=y[y.length-1]
alert(last);
}
https://stackoverflow.com/questions/50786086
复制相似问题