如何知道选择哪一行单选按钮id?
我做了一个演示,其中我使用ids tc_1
, tc_2
, tc_3
……等来创建行。
当我扩展一行时,我有两个选项和一个按钮。 我需要知道哪个行ID和哪个选项被选中?
示例:我展开第二行,它应该通过选项选择添加测试用例来警告tc_1
。
$('#list').on('click','.addClickClass',function(){ alert('hii') });
要获取行ID和已检查无线电的值,请使用以下命令:
$('#list').on('click','.addClickClass',function(){ alert($(this).parents('li[id*="tc"]').attr('id') + "\n" + $(this).parents('.ui-collapsible').find('input:checked').val()) })
它为您提供这样的输出,例如:
tc_1 TestCommand
我相信这正是你要找的。
我用它来获取行id:
$(this).parents('li[id*="tc"]').attr('id')
这是为了得到被检查的无线电值:
$(this).parents('.ui-collapsible').find('input:checked').val()
两者都与单击的“添加”按钮相关。
在这里看到它: http : //jsfiddle.net/R2DzV/16/
这是一些新的jquery代码,用于获取所选元素的id的alert
:
alert('hi from ' + $(e.target).closest('[datarole="collapsible"]').find('input:checked').attr('id') )
这是一个分叉的jsfiddle显示这个工作变化: http : //jsfiddle.net/mstapp/mGSJ7/1/
在像jQuery这样的情况下会为你提供有问题的元素对象$(this)
:
$('#list').on('click','.addClickClass',function(){ // This is current button clicked console.log($(this)); });
如果您想从按钮获取某些特定项目,您可以选择整个文档。 但是例如,为了让你想找到包装所有情况的li
:
$('#list').on('click','.addClickClass',function(){ // Get the first ancestor that matches a selector $(this).closest('li'); });
遍历和操纵Traversing – Manipulating有很多很棒的材料
你应该试试这个:
$('#list').on('click','.addClickClass',function(){ alert($(this).closest('div').parent().parent().prop('id')); });
那你可以试试这个:
$('#list').on('click', '.addClickClass', function () { var row = $(this).parents('li').eq(1); // top second parent var selected = row.find('label[data-icon="radio-on"] .ui-btn-text').text(); alert(row.attr('id') + "\n" + selected); });
但是你需要小心,如果有更多
元素,你需要指定哪一个要定位。
演示
后:
$('#list').trigger('create');
添加无线电更改事件处理程序:
var $appendedLi = $("#list>li:last-child"); $appendedLi.find ("input[type='radio']").on ("change", function () { if ($(this).prop("checked")) { alert("Current row: " + $(this).closest("#list>li").attr("id")); alert("Selected option: " + $(this).val()); } });
- Magento一页结帐 – 获取TypeError:checkout undefined(在opcheckout.js中)
- JavaScript:动态(动态)创建样式元素的优点和缺点
- jQuery jPlayer更改媒体无法正常工作
- Jirarest客户端在javascript给出错误
- 我需要用什么正则表达式来检查一些非拉丁字符?
- jQuery .hover()或.mouseleave()没有使用chrome
- 使用jqueryvalidation插件,如何在文本框中添加正则表达式validation?
- 基于变量javascript对数组项进行分组
- Velocity – 使用jQuery时如何避免ParseErrorException?