[英]Can't change span content
我有这个范围:
<span id="inicial"></span>
然后按钮中的此javascript单击:
var pat = /\/\S+\//i;
context = '';
context = $('#cmd').attr('value');
context= context.match(pat);
alert(context); //this gives correctly the string i need
if (context.length){
$('#inicial').text(context); //but it fails to change the text inside the span
}
可能是什么问题呢?
我也注意到它影响了整个点击功能,只是停止工作。 可能是什么原因?
问题是.match()
返回一个数组 ,而不是字符串。 但是.text(parm)
要求parm
是字符串 。
因此,在.match()
,您应该执行以下操作:
context = context[0];
或者使用其他方法将至少数组中的第一个元素转换为字符串(如果不是整个数组)。
这是.match()
的参考: https : //developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/match
和.text(parm)
的参考: http : //api.jquery.com/text/
试试-根据@Jonathan M答案编辑
$('#inicial').html(context[0]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.