繁体   English   中英

如何动态给jQuery ID?

[英]how to give jquery id dynamically?

jsp中table1(#tbl1)中的复选框是使用ajax和jquery动态创建的,其ID为:id =“ 123”(firstId)

$.each(json, function(idx, obj) {

$("#tbl1").append('<input type="checkbox" id='+obj.firstId+' onclick=nextPopulate('+obj.firstId+'); >'); }

在table2(#tbl2)中,复选框是在tbl1中的复选框选中时创建的,其ID为:

id =“ 123-001”(firstId-secondId)

$.each(json, function(idx, obj) {

$("#tbl2").append('<input type="checkbox" id="'+firstId+'-'+secondId+'" >'); }

在我的JavaScript中,如果未选中tbl1中的复选框,则我正在使用ajax调用来删除tbl2中的复选框。

第二组复选框的ID为:“ 123-001”,“ 123-002”,“ 123-003”,“ 456-001”

因此,如果在tbl1中未选中ID为123的复选框,则要删除其ID以firstId(123)开头的tbl2的所有复选框。

我怎样才能做到这一点 ?

我可以使用.empty()。 但是如何将id指定为“以firstId开头”(123)

我正在努力:

if(!($('#'+firstId).is(':checked'))){

    $('#'+firstId'-').empty();

很简单。 使用attr选择器:

$('[id^=123]')

您可以使用以选择器[name ^ =“ value”]开头的属性

$('[id^=123-]:not(:checked)').empty();

或者,您可以使用删除

$('[id^=123-]:not(:checked)').remove();

您也可以尝试致电.not(':checked');。

$('[id^=123-]').not(':checked').remove();

描述:选择具有指定属性的元素,该元素的值完全以给定字符串开头。

您可以使用^

if(!($('[$id^="firstId"]').is(':checked'))){

    $(this).empty();
$("[id^=check"+webId+"]").fn();

在这里,check是一个字符串,我们对其进行了硬编码,并动态获取了webClassId。

因此,例如:id将以check101开头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM