Javascript 如何用.each替换标签内容
我想写一个脚本,如果标签长度超过30个字符,它将调整标签长度,但找不到保持不变的原因。 jsfiddle: HTML: 替换此Javascript 如何用.each替换标签内容,javascript,jquery,html,each,labels,Javascript,Jquery,Html,Each,Labels,我想写一个脚本,如果标签长度超过30个字符,它将调整标签长度,但找不到保持不变的原因。 jsfiddle: HTML: 替换此$('label')。innerHTML=string与$(this).html(字符串) 以下是修改后的代码: $('label').each( function(){ var string = $(this).text(); var ilgis = $(this).text().length; if (ilgis > 30){
$('label')。innerHTML=string代码>与$(this).html(字符串)代码>
以下是修改后的代码:
$('label').each( function(){
var string = $(this).text();
var ilgis = $(this).text().length;
if (ilgis > 30){
var string = string.substr(0,17)+'...';
$(this).html(string);
}
}
);
替换此$('label')。innerHTML=string代码>与$(this).html(字符串)代码>
以下是修改后的代码:
$('label').each( function(){
var string = $(this).text();
var ilgis = $(this).text().length;
if (ilgis > 30){
var string = string.substr(0,17)+'...';
$(this).html(string);
}
}
);
您可以使用.text()通过传递回调函数作为参数来设置值,该参数将为每个标签调用,如
$('label').text(函数(i,text){
return text.length>30?text.substr(0,17)+'…':text;
});代码>
labelislabelislabelislabelislabelislabelislabelislabelislabelislabelis
Kitaskitaskitaskitaskitaskitaskitaskitaskitaskitaskitaskitaskitas
ASDFASDFSADFASDFDFDSFTASKITASKITASKITAS
siaip
siaip
siaip
您可以使用.text()通过传递回调函数作为参数来设置值,该参数将为每个标签调用,如
$('label').text(函数(i,text){
return text.length>30?text.substr(0,17)+'…':text;
});代码>
labelislabelislabelislabelislabelislabelislabelislabelislabelislabelis
Kitaskitaskitaskitaskitaskitaskitaskitaskitaskitaskitaskitaskitas
ASDFASDFSADFASDFDFDSFTASKITASKITASKITAS
siaip
siaip
siaip
参考此
$('label').each( function(){
var string = $(this).text();
var ilgis = $(this).text().length;
if (ilgis > 30){
var string = string.substr(0,17)+'...';
jQuery(this).html(string);
console.log(string);
}
}
);
参考此
$('label').each( function(){
var string = $(this).text();
var ilgis = $(this).text().length;
if (ilgis > 30){
var string = string.substr(0,17)+'...';
jQuery(this).html(string);
console.log(string);
}
}
);
谢谢它起作用了,但您能解释一下.innerHTML为什么没有吗?$(“label”)
返回一个jQuery对象,因此innerHTML
属性未定义。相反,this.innerHTML
将为您提供预期的结果。谢谢!它起作用了,但您能解释一下.innerHTML为什么没有吗?$(“label”)
返回一个jQuery对象,因此innerHTML
属性未定义。相反,this.innerHTML
将为您提供预期的结果。replace$('label')。innerHTML=string代码>与$(this).innerHTML=string代码>替换$('label')。innerHTML=string代码>与$(this).innerHTML=string代码>