Chr*_*ris 2 javascript jquery find
所以我有一系列2个嵌套的ul.当您单击li中的文本(位于标记中)时,我的页面会使其可编辑并添加保存按钮.单击保存按钮需要返回li中的新文本和li的id.id不是问题.我正在尝试使用jQuery的.find来选择那个锚标签(这是成功的),但我似乎无法从中获取文本.
这是第一个列表及其子列表的示例.
<ul class='lists'>
<li class='list1'>
<a class='a list' id='list1'> List 1 Name</a>
<img id='savelist1id' onClick="SaveName(this.parentNode.id)" src='save.jpg'>
<ul class='sublists'>
<li class='sub1'>
<a class='a sub' id='sub1id'> Sub 1 Name</a>
<img id='savesub1id' onClick="SaveName(this.parentNode.id)" src='save.jpg'>
</li>
<li class='sub3'>
<a class='a sub' id='sub2id'> Sub 2 Name</a>
<img id='savesub2id' onClick="SaveName(this.parentNode.id)" src='save.jpg'>
</li>
<li class='sub2'>
<a class='a sub' id='sub3id'> Sub 3 Name</a>
<img id='savesub3id' onClick="SaveName(this.parentNode.id)" src='save.jpg'>
</li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
这是用于标识您单击的保存按钮的代码.
function SaveName(parentid){
$('li').find('a').each(function(){
if (this.id == parentid){
alert(this.id+' '+this.text)
}
}
});
Run Code Online (Sandbox Code Playgroud)
我想要this.text向我展示锚标签内的文字.请帮忙?
================================================== =========编辑:
请原谅这篇文章.问题是我使用Jeditable并且不知道它会用一个表单来代替文本,所以任何调用文本的东西都行不通.抱歉.
只需使用$(this).text()而不是this.text
说实话,我不明白这个函数背后的逻辑,因为你的函数可能写成:
function SaveName(parentid) {
alert($('li a#' + parentid).text();
}
});
Run Code Online (Sandbox Code Playgroud)
或者我可以建议另一种方法来做你想要的事情:
<ul class='lists'>
<li class='list1'>
<a class='a list' id='list1'> List 1 Name</a>
<img id='savelist1id' onClick="SaveName(this)" src='save.jpg'>
<ul class='list1subs'>
<li class='sub1'>
<a class='a sub' id='sub1id'> Sub 1 Name</a>
<img id='savesub1id' onClick="SaveName(this)" src='save.jpg'>
</li>
<li class='sub3'>
<a class='a sub' id='sub2id'> Sub 2 Name</a>
<img id='savesub2id' onClick="SaveName(this)" src='save.jpg'>
</li>
<li class='sub2'>
<a class='a sub' id='sub3id'> Sub 3 Name</a>
<img id='savesub3id' onClick="SaveName(this)" src='save.jpg'>
</li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
function SaveName(element) {
alert($(element).prev("a").text());
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17589 次 |
| 最近记录: |