我还没有得到jQuery,所以javascript请.我需要帮助调整我的JS,以便在单击时从li中的嵌套span获取文本.如果你单击文本,我现在有它工作,但如果你单击整个li而没有获得其他嵌套元素(图像),id就像它一样工作.
现在我正在使用以下html和js:
HTML:
<ul><li><img><span onclick="myfunction(this)">TEXT</span></li></ul>
<input id="iSupervisorUserName" name="OBKey_WF_Manger_Supervisor_1" type="text" />
Run Code Online (Sandbox Code Playgroud)
JS:
function myfunction(span) {
var textInsideLi = span.innerHTML;
var field = document.getElementById("iSupervisorUserName");
field.value = textInsideLi;
Run Code Online (Sandbox Code Playgroud)
我希望在单击li时将SPAN中的文本写入输入,而不仅仅是跨度.我知道我应该从范围移动的onClick调用里,但如何调整JS所以它只能得到跨度内的文本,而不是IMG呢?
干得好
html
<ul><li onclick="myfunction(this)"><img><span>TEXT</span></li></ul>
Run Code Online (Sandbox Code Playgroud)
js
function myfunction(li){
document.getElementById("iSupervisorUserName").value=
li.getElementsByTagName('span')[0].textContent;
}
Run Code Online (Sandbox Code Playgroud)
或者
function myfunction(li){
document.getElementById("iSupervisorUserName").value=
li.childNodes[1].textContent;
}
Run Code Online (Sandbox Code Playgroud)
无论如何,我会向 ul 或 li 添加一个事件侦听器。因为如果您想稍后更新代码,内联 js 会很混乱。如果您onclick="myfunction(this)"
在每个 li 上添加,还会生成更多代码。
归档时间: |
|
查看次数: |
1810 次 |
最近记录: |