我可以證明這一點很複雜,所以如果我要去掉一個兔子洞,請阻止我。我試圖在單擊複選框時獲取跨度的id,然後更改該跨度中的內容。找到最接近的跨度id來替換跨度內容
我已經嘗試了一些東西,我認爲我走在了正確的軌道上,但正如我所說的,我傾向於將這些事情複雜化。順便說一下,所有的ID都是不同的,並由數據庫ID號設置。
我已經試過這
var readInput = $(".check span").attr('id');
$('#'.readInput).text('Read');
哪一種類型的作品的。除了只抓取第一個ID,即使我點擊第三或第四個複選框....也不會改變文本。
我也試過只是抓住跨度,然後用這種方式進行編號,但那不是我所需要的。
任何幫助將是美好的!
整個功能看起來像這樣......雖然這個問題很多都沒有必要。
$('.memo input.checkIt').on("click", function(){
var name_attr = $(this).attr('name');
var hidden_input = $('input[name="' + name_attr + '"]');
if($(this).siblings('a').attr("class") == 'checked') {
hidden_input.val(0);
}else {
hidden_input.val(1);
$(this).attr('disabled','disabled').parent().addClass('disabled');
var readInput = $(".check span").attr('id');
$('#' + readInput).text('Read');
console.log(readInput);
}
});
,這是HTML
<p class="pull-right check">
@if($cover_design_note->is_read)
{{ date('m/d/Y g:i a', strtotime($cover_design_note->date)) }} <i class="icon-thumbs-up program_this"></i> Read
@else
<input type="checkbox" class="checkIt" name="{{ $cover_design_note->id }}" /><span id="messRead{{ $cover_design_note->id }}"> Unread</span>
@endif
</p>
你能發佈整個事件處理程序和標記嗎? –
忽略此評論 – tmcc