我无法获取更改了单选框的div字段的id。如果我从html中去掉表格编码,这个编码就会起作用。有什么想法吗?
示例HTML:
$PLAN_REPORT_DATE_HTML .= qq|<div id="planreportdate-$TECH_ID---$METRIC_ID---$SIZE_ID">
<table><tr><td>
${FOUNDRY_NAME}_${TECHFLAVOUR}-$SIZE_VALUE<br><br>
<input type="radio" name="radiovalue-$count" value="Latest" > Latest <br>
<input type="radio" name="radiovalue-$count" value="MajorUpdates" > Major Updates <br>
<input type="radio" name="radiovalue-$count" value="All" >All<br>
</td></tr><tr><td>
<select name="plan-$count" multiple id="plan-$TECH_ID---$METRIC_ID---$SIZE_ID" size="5">|;Jquery编码
$("div[id^='planreportdate-'] input[name^='radiovalue-']").change(function(event) {
var id_value = $(this).parent().attr('id');
var value= $("div[id="+ id_value + "] input[name^='radiovalue-']:checked").val();
var selectboxid = id_value.replace(/^planreportdate-/g,"");
if (value == "All")
{
// THIS CODING SELECTS ALL THE SELECT OPTIONS
$("#plan-" + selectboxid).each(function() {
$("#plan-" + selectboxid + " option").attr("selected","selected");
});
}发布于 2012-02-02 23:14:00
我将向父类添加一个类,并使用.parents(),如下所示:
$PLAN_REPORT_DATE_HTML .= qq|<div id="planreportdate-$TECH_ID---$METRIC_ID---$SIZE_ID" class="parentOfRadios">
<table><tr><td>
${FOUNDRY_NAME}_${TECHFLAVOUR}-$SIZE_VALUE<br><br>
<input type="radio" name="radiovalue-$count" value="Latest" > Latest <br>
<input type="radio" name="radiovalue-$count" value="MajorUpdates" > Major Updates <br>
<input type="radio" name="radiovalue-$count" value="All" >All<br>
//.parents() to select
var id_value = $(this).parents('.parentOfRadios').first().attr('id');查看.parents()和.closest()之间的区别。
发布于 2012-02-02 23:05:36
使用.closest() jQuery函数查找距离DOM中的单选按钮最近的DIV。使用.parent()是行不通的,因为单选按钮的直接父元素是<td>元素,而不是您感兴趣的<div>元素。如下所示:
var id_value = \$(this).closest('div').attr('id');https://stackoverflow.com/questions/9114504
复制相似问题