Попробуйте поместить это в одинарную кавычку
<button class='delete-button' data-id ='"+${getCandidate.id}+"'>Delete candidate</button>
Значение Вашего идентификатора не имеет "индексного" свойства. Это - просто строка.
Одно предложение: проанализируйте строку идентификатора для получения значения:
$("input[name^=myboxes]").click(function() {
var element_id = $(this).attr('id');
//the initial starting point of the substring is based on "myboxes["
var ix = element_id.substring(8,element_id.length - 1)
alert(ix);
});
Надеюсь, это поможет
Следующее - то, что всегда работало на меня.
JQuery:
$("input[name^=myboxes]").click(function() {
var element_id = $(this).attr("meta:index");
alert(element_id);
});
HTML:
<input type="checkbox" id="myboxes[3]" name="myboxes[3]" meta:index="3" value="CHECKED" >
<input type="checkbox" id="myboxes[8]" name="myboxes[8]" meta:index="8" value="CHECKED" >
<input type="checkbox" id="myboxes[10]" name="myboxes[10]" meta:index="10" value="CHECKED" CHECKED >
Надеюсь, это поможет.
В выбранном ответе есть несколько проблем с синтаксисом, он должен быть:
$("input[name^=myboxes]").click(function() {
var element_id = $(this).attr('id');
//the initial starting point of the substring is based on "myboxes["
var ix = element_id.substring(8,element_id.length - 1);
alert(ix);
});