Reputation: 313
I wanna get selected id from my tabs. I tried anything but but I am very weak in javascript. This my tabs.
<li><a href="#tab" class="days" id="day_1">Pondelok</a></li>
<li><a href="#tab" class="days" id="day_2">Utorok</a></li>
<li><a href="#tab" class="days" id="day_3">Streda</a></li>
<li><a href="#tab" class="days" id="day_4">Štvrtok</a></li>
<li><a href="#tab" class="days" id="day_5">Piatok</a></li>
<li><a href="#tab" class="days" id="day_6">Sobota</a></li>
<li><a href="#tab" class="days" id="day_7">Nedeľa</a></li>
This is my attempt, which return undefined.
<script>
var selected_tab = $(".ui-state-active").attr("id");
document.write(selected_tab);
</script>
Upvotes: 0
Views: 104
Reputation: 3219
<script type="text/javascript">
$(document).ready(function () {
$('.days').click(function () {
alert($(this).attr('id'));
});
});
</script>
another best way with validations
$('a.days').click(function(){
alert($(this).attr('id')); });
Upvotes: 0
Reputation: 10619
Your are trying to to get attribute from class .ui-state-active
which doesn't exist as per your markup. So your code wont work:
Try the below and this will work:
$(function() {
$("ul li").each(function() {
var selected_tab = $(this).find("a").attr("id");
alert(selected_tab);
})
});
Upvotes: 0
Reputation: 1825
<script>
var selecId = "";
$('.days').click(function(){
selecId = $(this).attr('id');
});
</script>
Use selecId
where ever you want..
Upvotes: 0
Reputation: 7663
this will alert id of tab on which you have clicked
$('.days').click(function(){
alert($(this).attr('id'));
});
if you want to write it on document use this
$('.days').click(function(){
document.write($(this).attr('id'));
});
Live Demo
Upvotes: 1