- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收到此 JavaScript 错误,做了一些研究,人们在谈论有关实例化对象的内容。
function generateRow() {
var i = pageCounter.getIP_count();
//common sense counting
i++;
var objNEWVIP = document.getElementById("IP_row_new");
var objMODIFYVIP = document.getElementById("IP_row_modify");
//common DOM elements
var memberNum = document.createTextNode('Member IP'+ i + '\u00a0');
var brNode = document.createElement('br');
var nbspSpace = document.createTextNode('\u00a0');
var resolvesTextNode = document.createTextNode('Resolves: \u00a0');
//new_IP_Octet1_Element
var new_IP_Octet1_Element = document.createElement('input');
new_IP_Octet1_Element.setAttribute('type','text');
new_IP_Octet1_Element.setAttribute('maxlength','3');
new_IP_Octet1_Element.setAttribute('size','3');
new_IP_Octet1_Element.setAttribute('name','IP'+i+'_octet1');
new_IP_Octet1_Element.setAttribute('id','IP'+i+'_octet1');
new_IP_Octet1_Element.setAttribute('value','167');
new_IP_Octet1_Element.setAttribute('size','3');
new_IP_Octet1_Element.setAttribute('hostname','IP'+i+'_hostname');
new_IP_Octet1_Element.onchange = function () { resolveMe(this.id); };
//new_IP_Octet1_Element.setAttribute('onchange', 'resolveMe(this.id);');
//new_IP_Octet2_Element
var new_IP_Octet2_Element = document.createElement('input');
new_IP_Octet2_Element.setAttribute('type','text');
new_IP_Octet2_Element.setAttribute('maxlength','3');
new_IP_Octet2_Element.setAttribute('size','3');
new_IP_Octet2_Element.setAttribute('name','IP'+i+'_octet2');
new_IP_Octet2_Element.setAttribute('id','IP'+i+'_octet2');
new_IP_Octet2_Element.setAttribute('value','69');
new_IP_Octet2_Element.setAttribute('size','3');
new_IP_Octet2_Element = function () { resolveMe(this.id); };
//new_IP_Octet2_Element.setAttribute('onchange', 'resolveMe(this.id);');
//new_IP_Octet3_Element
var new_IP_Octet3_Element = document.createElement('input');
new_IP_Octet3_Element.setAttribute('type','text');
new_IP_Octet3_Element.setAttribute('maxlength','3');
new_IP_Octet3_Element.setAttribute('size','3');
new_IP_Octet3_Element.setAttribute('name','IP'+i+'_octet3');
new_IP_Octet3_Element.setAttribute('id','IP'+i+'_octet3');
new_IP_Octet3_Element.setAttribute('value','0');
new_IP_Octet3_Element.setAttribute('size','3');
new_IP_Octet3_Element = function () { resolveMe(this.id); };
//new_IP_Octet3_Element.setAttribute('onchange', 'resolveMe(this.id);');
//new_IP_Octet4_Element
var new_IP_Octet4_Element = document.createElement('input');
new_IP_Octet4_Element.setAttribute('type','text');
new_IP_Octet4_Element.setAttribute('maxlength','3');
new_IP_Octet4_Element.setAttribute('size','3');
new_IP_Octet4_Element.setAttribute('name','IP'+i+'_octet4');
new_IP_Octet4_Element.setAttribute('id','IP'+i+'_octet4');
new_IP_Octet4_Element.setAttribute('value','0');
new_IP_Octet4_Element.setAttribute('size','3');
new_IP_Octet4_Element = function () { resolveMe(this.id); };
//new_IP_Octet4_Element.setAttribute('onchange', 'resolveMe(this.id);');
//make SPAN for DNS reverse resolution
var reverseDNS_Element = document.createElement('span');
reverseDNS_Element.setAttribute('id','IP'+i+'_hostname');
reverseDNS_Element.setAttribute('name','IP'+i+'_hostname');
//output
if (document.getElementById('requesttype').value == "new") {
objNEWVIP.appendChild(memberNum);
objNEWVIP.appendChild(new_IP_Octet1_Element);
objNEWVIP.appendChild(nbspSpace);
objNEWVIP.appendChild(new_IP_Octet2_Element);
objNEWVIP.appendChild(nbspSpace);
objNEWVIP.appendChild(new_IP_Octet3_Element);
objNEWVIP.appendChild(nbspSpace);
objNEWVIP.appendChild(new_IP_Octet4_Element);
objNEWVIP.appendChild(nbspSpace);
objNEWVIP.appendChild(resolvesTextNode);
objNEWVIP.appendChild(reverseDNS_Element);
objNEWVIP.appendChild(brNode);
}
if (document.getElementById('requesttype').value == "modify") {
objMODIFYVIP.appendChild(memberNum);
objMODIFYVIP.appendChild(new_IP_Octet1_Element);
objMODIFYVIP.appendChild(nbspSpace);
objMODIFYVIP.appendChild(new_IP_Octet2_Element);
objMODIFYVIP.appendChild(nbspSpace);
objMODIFYVIP.appendChild(new_IP_Octet3_Element);
objMODIFYVIP.appendChild(nbspSpace);
objMODIFYVIP.appendChild(new_IP_Octet4_Element);
objMODIFYVIP.appendChild(nbspSpace);
objMODIFYVIP.appendChild(resolvesTextNode);
objMODIFYVIP.appendChild(reverseDNS_Element);
objMODIFYVIP.appendChild(brNode);
}
pageCounter.addMethod("ip_count"); //increment after adding row
}
generateRow() 函数在用户单击按钮时被调用。
我要实例化什么对象...以及如何做到这一点?
我认为问题在于
var objNEWVIP = document.getElementById("IP_row_new");
var objMODIFYVIP = document.getElementById("IP_row_modify");
但我不确定如何在此位置创建新对象...
这是计数器函数
function counterObj(){
//object to keep track of all counts across all forms
this.ipCountTotal = 0;
this.dnsElementTotal = 0;
this.approverTotal = 0;
//input methods mapping
this.clear = clearing;
this.addMethod = add;
//retreval methods mapping
this.getIP_count = function() { return(this.ipCountTotal);};
this.getDNS_count = function() { return(this.dnsElementTotal);};
this.getApprover_count = function() { return(this.approverTotal);};
//addMethod
function add(strType){
switch(strType) {
case "dns_count":
this.dnsElementTotal++;
break;
case "ip_count":
this.ipCountTotal++;
break;
case "approver_count":
this.approverTotal++;
break;
} //end swtich strType
}
//clear all
function clearing(){
this.ipCountTotal = 0;
this.dnsElementTotal = 0;
this.approverTotal = 0;
}
}
以下是声明:
var pageCounter = new counterObj();
pageCounter.clear()
这是 html DIV
<div id="ip_row_new" title="please provide the ip address of each endpoint member.">
</div>
还有...
<div id="IP_row_modify">
<!-- dynamically adds new rows -->
</div>
这是用户将选择的 HTML 中的 select 语句...
<select id="requesttype" name="requestType" onChange="checkF5Request(this.value);" tabindex="2">
<option value="...">...</option>
<option value="new">New Request</option>
<option value="modify">Modify Request</option>
<option value="delete">Removal Request</option>
<option value="iRule_redirect">iRule Redirect</option>
</select>
这是错误:
Error: uncaught exception: [Exception... "Could not convert JavaScript argument arg 0 [nsIDOMHTMLDivElement.appendChild]" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: https://request.psp :: generateRow :: line 358" data: no]
最佳答案
所以你的new_IP_Octet2_Element
是一个函数:
new_IP_Octet2_Element = function () { resolveMe(this.id); };
..无法传递给 appendChild()
,这需要一个 DOM 节点。
我不确定这个函数有什么意义,但是如果你删除它, objNEWVIP.appendChild(new_IP_Octet2_Element);
上的错误应该消失。
关于JavaScript 错误 : NS_ERROR_XPC_BAD_CONVERT_JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8330753/
尝试将“appendChild”添加到刚创建的元素(在 for 循环中)后出现此错误。 这个错误是什么意思? 我想不可能附加某事。到 DOM 中并不真正存在的元素。 我该如何解决? “innerHTM
我收到此 JavaScript 错误,做了一些研究,人们在谈论有关实例化对象的内容。 function generateRow() { var i = pageCounter.getIP
我有一个表单,允许访问者使用“添加另一个”链接添加新的表单字段。这一切都很好,但我还试图让表单包含一个“是否需要此字段”复选框,为此我需要添加一些额外的 div,这就是我遇到问题的地方。这是我的代码:
为什么这个小脚本不起作用? Insert title here var image = new Image().src="1.jpg"; context = docum
我不知道为什么,但我只在 Firefox 中遇到 JavaScript 错误,而且我在页面中看到了一些我以前从未引用过的不需要的 JavaScript 文件。 这是什么?实际上我想知道我的页面中这个不
我正在尝试做这个captcha jquery 插件可以工作。执行某行代码,会弹出错误。 这是导致错误的代码行: $(".ajax-fc-" + rand).draggable({ containmen
利用 firefox (17.01),我从上传的 .csv 文件生成 xml 代码。此代码随后将转换为 xhtml,但在此之前,我需要创建有效的 xml 文件。 我的整个代码是 var parser
我是 jQuery 和 Ajax 的新手,我遇到了一个问题。我在我的控制台上收到以下错误: NS_ERROR_XPC_BAD_CONVERT_JS: Could not convert JavaScr
好的,所以我终于弄清楚是我的代码的哪一部分导致了异常。您可以阅读初始帖子 here.初始帖子中的代码缺少实际导致异常的部分(手动订阅 viewPortData observable)。显然,我做错了.
我正在开发一个名为 jQuery 的开源项目。我正在尝试消除一个异常,该异常使该库在 Firefox 上部分工作,但在 chrome 上完全失效: uncaught exception: [Excep
我是一名优秀的程序员,十分优秀!