我尝试使用ajax在ul中动态添加元素,我的当前代码是在ajax方法中:
var ul = document.getElementById("menu");
var li = document.createElement("li");
li.appendChild(document.createTextNode(array[i]));
ul.appendChild(li);
但它创造了"标准" li元素,我想用这种类型创建它们:
<li style="cursor:pointer;"><a onclick="javascript:$('#cod').val(array[i])">array[i]</a></li>
我该怎么做?
[编辑] 我要创建的是THIS(您可以看到它显示为&#34;阴影&#34;表示它是可选择的
但是jvascript会创建这种类型的OPTIONS, 现在你可以看到选项没有得到那个&#34;阴影&#34;。
答案 0 :(得分:0)
我如何理解此<%=IDAnag%>
的内容插入您的后端。当您点击链接时,此内容已经生成。也许你可以试试这样的东西:
function AppendLi(val){
var ul = document.getElementById("menu");
var li = document.createElement("li");
li.innerHTML= val;
ul.appendChild(li);
}
&#13;
<li style="cursor:pointer;">
<a onclick="AppendLi(this.textContent)">
<%=IDAnag%>
</a>
</li>
<ul id="menu"></ul>
&#13;
但我不知道你是如何构建你的后端的。也许最好的方法是在后端添加此事件?
答案 1 :(得分:0)
我自己解决了这个问题,如果这里需要的是代码:
var ul = document.getElementById("menu");
var li = document.createElement("li");
$("li").each(function()
{
var $li = $(this);
$li.css("cursor","pointer");
});
var a = document.createElement("a");
var l = array[i];
a.textContent = array[i];
a.addEventListener("click",function(){
$("#cod").val(array[i]);
});
li.appendChild(a);
ul.appendChild(li);