无法设置属性'innerHTML'在javascript中为null
Cannot set property 'innerHTML' of null in javascript
伙计们,我有一个包含文本和按钮的列,我想要的是当点击按钮时,文本发生了变化。。这是我的代码
var count = 0;
$(document).ready(function() {
$("#jqGrid").jqGrid({
data: data.rows,
datatype: "local",
styleUI: "Bootstrap",
colModel: [
{
label: 'Customer ID',
name: 'CustomerID',
width: 180,
editable: true,
edittype: "custom",
id: "CustomerID",
editoptions: {
custom_element: function(value, options) {
var parts = value.split(' ');
var elemStr = '<div><input size="6" id="txt_"' + count + '" value="' + parts[0] +
'" /><input type="button" size="5" value="..." onclick="setText();"/></div>';
count++;
// return DOM element from jQuery object
return $(elemStr)[0];
},
custom_value: function(elem) {
var inputs = $("input", $(elem)[0]);
var first = inputs[0].value;
return first;
}
}
},
],
});
});
function setText() {
document.getElementById("txt_" + count).innerHTML = "hey";
}
那为什么它给了我这个例外。。plz帮助。。顺便说一句,我是的初学者
setText中的计数未定义。
第一次更改按钮的点击功能以通过计数变量
var elemStr = '<div><input size="6" id="txt_"' + count + '" value="' + parts[0] +
'" /><input type="button" size="5" value="..." onclick="setText(' + count + ');"/></div>';
然后接受计数作为参数
function setText(count) {
document.getElementById("txt_" + count).innerHTML = "hey";
}
您可以将count传递给函数:
var count = 0;
$(document).ready(function() {
$("#jqGrid").jqGrid({
data: data.rows,
datatype: "local",
styleUI: "Bootstrap",
colModel: [
{
label: 'Customer ID',
name: 'CustomerID',
width: 180,
editable: true,
edittype: "custom",
id: "CustomerID",
editoptions: {
custom_element: function(value, options) {
var parts = value.split(' ');
var elemStr = '<div><input size="6" id="txt_"' + count + '" value="' + parts[0] +
'" /><input type="button" size="5" value="..." onclick="setText(' + count + ');"/></div>';
count++;
// return DOM element from jQuery object
return $(elemStr)[0];
},
custom_value: function(elem) {
var inputs = $("input", $(elem)[0]);
var first = inputs[0].value;
return first;
}
}
},
],
});
});
function setText(count) {
document.getElementById("txt_" + count).innerHTML = "hey";
}
相关文章:
- 正则表达式,用于在 JavaScript 中为电话号码添加短划线
- 在Javascript中为if/else语句添加OR
- 无法设置属性'innerHTML'在javascript中为null
- 如何在javascript中为全局变量赋值
- 在JavaScript中为true==1和false==0
- 为什么可以'我们在函数体中为函数对象添加属性,就像在javascript中为对象文字添加属性一样
- JavaScript中为负零
- 在JavaScript中为表单元素生成键值对
- 如何在Javascript中为不同的页面访问存储变量
- 如何在 javascript 中为字符串中的数字添加下划线
- 在 JavaScript 中为其添加动画效果时更改图像颜色
- 如何在 javascript 中为没有值的标签选择属性
- 为什么不't空字符串==在JavaScript中为null
- 如何在JavaScript中为ENTER事件充值
- 如何在JavaScript中为Google闭包编译器设置参数类型
- 如何在JavaScript中为任何对象实现事件侦听器
- 如何在javascript中为动画制作一个ease函数
- 如何在javascript中为两个数组的每个循环使用一个
- 有没有一种方法可以在javascript中为文本节点添加属性
- 为什么{}=={}在JavaScript中为false