js 代码提示未定义 求指教

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 代码提示未定义 求指教相关的知识,希望对你有一定的参考价值。

参考技术A

此处的this是指 change()这个方法。这个方法没有className的属性,所以会报未定义。

改写成这样应该就不会有问题了。

//html dom改写
<li><a href="#1" onclick = "change(this)">lewvwer</a></li>
//javascript方法改写
function change(args)
  alert(args.className);
 

如果解决你的问题,请采纳。

参考技术B

这样写:(change方法里面加入this,代表当前点击的对象)

<a href="#" onclick="change(this)">lewvwer</a>


function change(obj)
 alert(obj.className);

因为你change没有参数,就直接用了this关键字,那这个this关键字就指先window对象。在window对象中没有className

本回答被提问者采纳
参考技术C onclick="change(this)"

function change(obj)
alert(obj.className)

js问题,动态增加select里的option,求问为啥这段代码不执行?求大神指教!

<script>

// 动态添加select中的项option:
function addOneOption()

var optionlist = new Array();
<%
String[] arrlist = (String[]) request.getAttribute("optionlist"); //调用servlet传来的数组
if(null != arrlist)

for(int i = 0; i < arrlist.length; i++)

%> optionlist[<%=i%>]=<%=arrlist[i]%>;
<%


%>
var selectObj=document.getElementById("user_dm");
var option = document.createElement("option");
for(var t = 0 ;t < optionlist.length;t++)

option.value=optionlist[t];
option.innerHTML = t;
selectObj.appendChild(option);

</script>

====================================
<body>
<select id="user_dm" name="user_dm">
</select><br>
<input type="button" onClick="addOneOption()" value="添加">
</body>

本来添加单个option就行的,加了上面那段java代码就不执行了。

java  代码 是后台执行 , 在前台 是无法执行的 , 

如果要从后台获取数据  要使用ajax的方式  在回调函数里面增加选项

function addOneOption()
$ajax(
    url:url,
    success:function(data)
     var optionlist = eval(\'(\' +data + \')\');
     var selectObj=document.getElementById("user_dm");
    var option = document.createElement("option");
    for(var t = 0 ;t < optionlist.length;t++)
     
        option.value=optionlist[t];
        option.innerHTML = t;
        selectObj.appendChild(option);
    
    ,
);
var selectObj=document.getElementById("user_dm");
var option = document.createElement("option");
for(var t = 0 ;t < optionlist.length;t++)
 
option.value=optionlist[t];
option.innerHTML = t;
selectObj.appendChild(option);

</script>

====================================
<body>
<select id="user_dm" name="user_dm">
</select><br>
<input type="button" onClick="addOneOption()" value="添加">
</body>
参考技术A 写的什么乱七八糟的,自己右键查看源文件,看看生成的什么东西再说追问

上面java代码单独拿出来能成功执行,optionlist能获取一个数组。下面的js代码如果删掉上面的java也能成功执行,动态增加select的子项option,加在一起就不成功了。我就是要把数组里的值作为新增option的值

以上是关于js 代码提示未定义 求指教的主要内容,如果未能解决你的问题,请参考以下文章

vue.js数据可以在页面上渲染成功却总是警告提示某个字段未定义

安装centos有错误提示找不到安装源,求大神指教(我是硬盘安装)

论坛出现:“jquery未定义”错误提示,怎样解决?

js一直提示函数未定义

java中遇到-xlint:unchecked,如何使用?求高手指教!

C语言如何求一个二维数组有几行,还有为啥会提示gets()是一个未定义的标识符?