Javascript.replacement在特定服务器上失败
Javascript .replace fails on specific server
我的一些Javascript遇到了问题,当连接到localhost时,它在我的笔记本电脑上似乎可以正常工作,但当代码放在远程服务器上,并且我从同一台笔记本电脑和浏览器(IE11)连接到该服务器时,它就不能正常工作了。相关代码片段为:
var wktxt = inputs[i].getAttribute( "ondblClick" );
wktxt = wktxt.replace("(" + rowno, "(" + rowcnt)
inputs[i].setAttribute( "ondblClick", wktxt );
inputs[i].style.backgroundImage = "url()";
它在第二行失败,返回"Object不支持属性或方法'replace'",但问题并没有在本地解决,并且行为完全符合预期(这是在HTML表中克隆行的某些逻辑的一部分)。当我启动故障调试时,wktxt包含"function ondblclick(){AddNotes2(1,0)}",rowno为1,rowcnt为7。
有什么想法吗?这段代码是在循环中执行的——这与每次迭代中重新执行的var声明有什么关系吗?
因为replace方法是字符串对象原型的一部分。看起来var wktxt的结果可能并不总是等于一个字符串。要测试这一点,您可以使用typeof语句。类似的东西
if (typeof wktxt === 'string') {
wktxt = wktxt.replace("(" + rowno, "(" + rowcnt)
inputs[i].setAttribute( "ondblClick", wktxt );
inputs[i].style.backgroundImage = "url()";
}
else {
//write some code here to put whatever you want in wktxt should it fail to evaluate to
// a string
}
相关文章:
- Nodejs服务器:加载资源失败:服务器的响应状态为404(未找到)
- Rails服务器因为uglifier gem而失败
- 解析JS SDK登录到Node.JS中运行的解析服务器=失败
- 带Jquery的wep API,加载资源失败:服务器响应状态为404(未找到)
- Android/Chrome jQuery AJAX请求在到达服务器之前失败,并出现parserror
- 在服务器上加载资源失败
- 正在运行'成员服务器'导致生成失败并出现EEXIST错误
- gwt使用本机javascript向远程服务器发送POST请求失败
- 在Firefox中,当type=submit for按钮时,请求服务器失败
- 检查客户端验证在服务器端成功/失败
- 停止 C# 在下拉列表 javascript 验证失败时继续执行服务器端脚本
- CORS 在 http 服务器上失败
- JQuery 验证输入类型文件在服务器端失败
- 在第一个服务器验证失败响应上中止其他上传
- 加载资源失败:服务器使用 nodejs 以状态 404(未找到)进行响应
- 连接到测试 websocket 服务器有效,但连接到我的 Node.js 服务器失败
- SignalR在Chrome上使用WebSocket连接到服务器失败
- 日志含义连接服务器失败.(file:///android_asset/www/index.html)
- Chrome连接websocket服务器失败(操作码-1)“握手被取消”
- 启动MongoDB服务器失败.处理步骤mongodb的dbxit: rc: 48错误