我有大约30个输入全部文本,我有一个按钮,当按钮按下时,我想要获得聚焦的那个ID。 我怎样才能得到它?使用javascript获取活动字段ID
1
A
回答
4
重点是棘手的。只要其他元素(如单击按钮),我的焦点已经移动,因此您无法通过查看焦点来查看上一次激活的输入字段。
您可以将焦点事件的事件处理程序附加到每个输入元素,并跟踪自己最后一个接收焦点的人,然后在按下按钮时使用该变量。
也许如果你描述你试图解决的实际问题,我们可以提供更好的解决方案。
您可以在这里看到一个记住最后一个活动输入字段的示例:http://jsfiddle.net/jfriend00/XmqPe/。单击该按钮,最后一个活动字段将以红色突出显示。
var lastInput;
function gotInput() {
lastInput = this;
}
function addEvent(elem, event, fn) {
if (elem.addEventListener) {
elem.addEventListener(event, fn);
} else {
elem.attachEvent("on" + event, function() {
fn.call(elem, window.event);
});
}
}
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
addEvent(inputs[i], 'focus', gotInput);
}
addEvent(document.getElementById('test'), 'click', function() {
for (var i = 0; i < inputs.length; i++) {
inputs[i].style.borderColor = '#000';
}
if (lastInput) {
lastInput.style.borderColor = '#F00';
}
});
0
你可以试试这个解决方法,以获得具有焦点的最后一个输入的按钮按下:
示例使用jQuery:
<script type="text/javascript">
$(document).ready(function() {
var lastId = null;
$(".inputTest").focus(function() {
//put the last input id in a "global" variable:
lastId = $(this).attr("id");
});
$("#btnTest").click(function() {
if (lastId) {
//if exists, do something:
alert(lastId);
}
});
});
</script>
HTML示例:
<body>
<input type="text" name="test1" id="test1" class="inputTest" />
<input type="text" name="test2" id="test2" class="inputTest"/>
<input type="text" name="test3" id="test3" class="inputTest" />
<input type="text" name="test4" id="test4" class="inputTest" />
<input type="text" name="test5" id="test5" class="inputTest" />
<input type="text" name="test6" id="test6" class="inputTest" />
<input type="button" value="test" id="btnTest" />
</body>
+0
除了OP没有在他们的问题的任何地方指定jQuery。约定通常不会提出jQuery解决方案,除非在问题中通过标记或文本中提到了jQuery。另外,这与我提出的简单的JavaScript回答有何不同? – jfriend00
相关问题
- 1. 使用虚拟键盘获取文本字段的ID JavaScript
- 2. 使用javascript获取日期字段值
- 3. 使用随机ID获取动态字段的值
- 4. 从json获取动态表字段ID使用jquery
- 5. javascript,colorbox - 动态获取ID
- 6. Rails活动记录表ID字段
- 7. Android - 获取活动/片段中的父视图的ID
- 8. 获取调用片段的父活动的活动
- 9. 从Google+的URL中获取活动ID?
- 10. 获取案例活动的任务ID
- 11. 在jquery mobile中获取活动Div id
- 12. 使用ID从LDAP活动目录获取数据?
- 13. 使用javascript获取元素ID
- 14. 使用javascript从php获取id
- 15. 使用javascript从cookies获取会话ID
- 16. 使用JQuery或Javascript获取设备ID
- 17. 使用JavaScript .match获取YouTube ID()
- 18. 使用Javascript获取WordPress博文ID
- 19. 使用JavaScript从URL获取ID
- 20. 使用名称提取字段的ID
- 21. 使用增加的ID定位自动生成的字段(JavaScript)
- 22. 使用JavaScript捕获Shift键活动
- 23. 如何获取会话的字段ID?
- 24. jquery获取输入字段的ID
- 25. 如何获取字段集的ID
- 26. 从片段获取适配器活动
- 27. 从活动获取ViewPager片段
- 28. 在片段中获取活动结果
- 29. 从片段活动中获取TabHost?
- 30. 使用最新的“ID”获取行中的所有字段
定义“活性'。如果你的意思是聚焦,那么点击该按钮后,焦点就会转到按钮上,这样就不容易实现。另外,你应该展示你有什么,不要问怎么做。 – kennypu