DOM Exception 12: An invalid or illegal string was specified问题解决办法:
我在将json数组传递到html页面上时候,js报出此错误具体位置是:
var parentNode = doc.querySelector("#" + parent + " .web-context-menu-items");
json实体类:
public class MyJsonObj {
private String name;
private int id;
private int parent;
private String Enname;
public String getEnname() {
return Enname;
}
public void setEnname(String enname) {
Enname = enname;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getParent() {
return parent;
}
public void setParent(int string) {
this.parent = string;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
页面上使用:
name:"标引",
id:"112",
parent:"100",
callback: function() {
alert("");
}
原来是我将int类型的变量id和parent直接传递到了页面上,然而在页面执行
doc.querySelector("#" + parent + " .web-context-menu-items");
语句时发生了错误,我以为找到了问题,将json实体类的id和parent属性都设置为String类型,Getter、Setter,然而事实证明我还是太年轻,问题没有解决。
经过多方谷歌、度娘,结合我自己的代码终于找到原因,原来是在页面上执行上面那行代码时,如果parent能够被转化为数值类型,则就会报此错误。
于是我在保存parent和id时候后面都加上了一个字符串后缀,保存运行,问题还存在,接着将parent和id各自添加一个字符串前缀,保存、运行,问题完美解决!
注:为id和parent添加字符串后缀不能起作用