Javascript 无法对从div';s
我无法使用javascript/jquery分割从div检索到的文本。我以为可以对每个字符串进行切片,.text()函数总是返回一个字符串,所以我看不出问题所在。任何帮助都将不胜感激 Html:Javascript 无法对从div';s,javascript,jquery,string,slice,Javascript,Jquery,String,Slice,我无法使用javascript/jquery分割从div检索到的文本。我以为可以对每个字符串进行切片,.text()函数总是返回一个字符串,所以我看不出问题所在。任何帮助都将不胜感激 Html: 第一组:55% 第2分部:60% 第3分部:64% 第4分部:76% 第5分部:63% Javascript: $(function () { var divs = {}; var tempString, vakken = {}; $('.vaknaam').each(function (key,
第一组:55%
第2分部:60%
第3分部:64%
第4分部:76%
第5分部:63%
Javascript:
$(function () {
var divs = {};
var tempString, vakken = {};
$('.vaknaam').each(function (key, value) {
tempString = $(value).contents().filter(function () {
return this.nodeType == 3;
}).text();
tempString = tempString.slice(0, - 2);
vakken[tempString] = $(value).children('span').text();
});
for (var property in vakken) {
$('body').append("<p>" + property + "</p>");
}
});
$(函数(){
var divs={};
var tempString,vakken={};
$('.vaknaam')。每个(函数(键、值){
tempString=$(值).contents().filter(函数(){
返回this.nodeType==3;
}).text();
tempString=tempString.slice(0,-2);
vakken[tempString]=$(value).children('span').text();
});
for(vakken中的var属性){
$('body')。追加(“”+属性+””;
}
});
slice
不修改初始字符串,该字符串是不可变的。尝试:
tempString = tempString.slice(0, - 2);
slice
不修改初始字符串,该字符串是不可变的。尝试:
tempString = tempString.slice(0, - 2);
你有几个错误
vakken
slice
方法不会修改字符串,因此您应该指定返回的内容property
var只是一个索引,所以您需要询问vakken[property]
$(function () {
var divs = {};
var tempString, vakken = {}; //1
$('.vaknaam').each(function (key, value) {
tempString = $(value).contents().filter(function () {
return this.nodeType == 3;
}).text();
tempString = tempString.slice(0, -4); //2
vakken[tempString] = $(value).children('span').text();
});
for (var property in vakken) {
$('body').append("<p>" + property + "</p>"); //3
}
});
$(函数(){
var divs={};
var tempString,vakken={};//1
$('.vaknaam')。每个(函数(键、值){
tempString=$(值).contents().filter(函数(){
返回this.nodeType==3;
}).text();
tempString=tempString.slice(0,-4);//2
vakken[tempString]=$(value).children('span').text();
});
for(vakken中的var属性){
$('body')。追加(“”+property+“”);//3
}
});
检查此项。您有几个错误
vakken
slice
方法不会修改字符串,因此您应该指定返回的内容property
var只是一个索引,所以您需要询问vakken[property]
$(function () {
var divs = {};
var tempString, vakken = {}; //1
$('.vaknaam').each(function (key, value) {
tempString = $(value).contents().filter(function () {
return this.nodeType == 3;
}).text();
tempString = tempString.slice(0, -4); //2
vakken[tempString] = $(value).children('span').text();
});
for (var property in vakken) {
$('body').append("<p>" + property + "</p>"); //3
}
});
$(函数(){
var divs={};
var tempString,vakken={};//1
$('.vaknaam')。每个(函数(键、值){
tempString=$(值).contents().filter(函数(){
返回this.nodeType==3;
}).text();
tempString=tempString.slice(0,-4);//2
vakken[tempString]=$(value).children('span').text();
});
for(vakken中的var属性){
$('body')。追加(“”+property+“”);//3
}
});
检查此项。您忽略了
.slice()
调用的返回值。我将它链接到.text()
的末尾。。。因此,…text().slice(0,-2)
请注意,如果您发布了工作(至少到您遇到问题的地方)代码,您的问题将更容易理解。在您的小提琴中,您没有包含jQuery,并且没有定义vakken
。这类事情使得解决实际问题变得更加困难……哦,如果你想摆脱:
,你还需要$.trim()
文本。你还没有告诉我们预期的产量是多少,我把小提琴修好了。我为我的错误感到抱歉。我正在筛选文本节点,因为它实际上是:我希望摆脱。您忽略了.slice()
调用的返回值。我只是将其链接到.text()
的末尾。。。因此,…text().slice(0,-2)
请注意,如果您发布了工作(至少到您遇到问题的地方)代码,您的问题将更容易理解。在您的小提琴中,您没有包含jQuery,并且没有定义vakken
。这类事情使得解决实际问题变得更加困难……哦,如果你想摆脱:
,你还需要$.trim()
文本。你还没有告诉我们预期的产量是多少,我把小提琴修好了。我为我的错误感到抱歉。我正在筛选文本节点,因为它实际上是:我希望摆脱。它修复了切片问题,但代码仍有错误。它修复了切片问题,但代码仍有错误。你是对的,但我希望打印属性,而不是vakken中的属性值。如果你附加属性,你会看到字符串没有被切分。很抱歉,我丢失了,你能给我一个你想要打印什么的例子吗?第1部分第2部分第3部分。。。没有结尾的“:”。好的,那么只需将切片参数-2替换为-4:tempString=tempString.slice(0,-4)。(我已经更新了代码)当我像上面的@squint建议的那样首先修剪它时,它确实可以工作,非常感谢!你是对的,但我希望打印财产,而不是瓦肯的价值。如果你附加属性,你会看到字符串没有被切分。很抱歉,我丢失了,你能给我一个你想要打印什么的例子吗?第1部分第2部分第3部分。。。没有结尾的“:”。好的,那么只需将切片参数-2替换为-4:tempString=tempString.slice(0,-4)。(我已经更新了代码)当我像上面的@squint建议的那样首先修剪它时,它确实可以工作,非常感谢!