我想创建用于检查HTML的空元素的函数。
Javascript代码:
var STRIP_COMMENTS = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg;
function getParamNames(params, formName, errorMSG) {
if(result!="" && formName!=""){
var fnStr = params.toString().replace(STRIP_COMMENTS, '');
var result = fnStr.slice(fnStr.indexOf('(')+1, fnStr.indexOf(')')).match(/([^\s,]+)/g).toString();
alert(document.frm.result.value);
return false;
}
else{
alert("Параметры функции не были заданы в JavaScript. Пожалуйста обратитесь к программистам.");
return false;
}
}
HTML code:
<form name='frm' method='post' action='' onSubmit="getParamNames(function(ggg){}, 'frm', 'Хамаи катакчахо бояд пур карда шавад');">
<input type="text" name="ggg" />
<input type="submit" value="ssdfsdfdf" />
</form>
我收到此错误: TypeError:document.frm.result未定义
alert(document.frm.result.value);
答案 0 :(得分:3)
我只是使用dom引用来做到这一点。
//get a reference to all elements
var allElems = document.body.getElementsByTagName("*");
var emptyElems = []; //store empty elements here
for (var i=0; i<allElems.length; ++i) { //check each element for text or children
if (!allElems[i].textContent && !allElems[i].hasChildNodes()) {
emptyElems.push(allElems[i]); //add empty elements to array
}
}
console.log(emptyElems);