2015-02-03 6 views
0

У меня есть файл Index.aspx, связанный с файлом seatbooks.js.
В Index.aspx есть кнопка с идентификатором Indexbutton. Indexbutton имеет eventonclick='book_ticket()'. book_ticket() метод включен на seatbooks.js. Как получить идентификатор кнопки (Indexbutton) на book_ticket(). Пожалуйста, проверьте мой код ниже:Как получить кнопку id

<input type="button" name="submit" class="ui-state-default ui-corner-all" id="indexbutton" onclick="book_tickets()" value="Book Seat" /> 

Выше мой код на Index.aspx. И это мой book_ticket() код:

function book_tickets() {  
var tickets = jQuery('.seat.selected').length; 
//seatId = $('#button').attr('id'); 
//var btnId = this.attr('id'); 
//console.log(seatId); 
if(tickets==0) 
{ 
    alert('Please select at least one seat to continue...!'); 
    return false; 
} else if (tickets > 1) 
{ 
    alert('Please select only one seat to continue...!!'); 
    return false; 
}else 
{ 
    x = jQuery('.seat.selected').toArray(); 
    jQuery('#seat-form-data').html(''); 
    jQuery('.seat.selected').each 
    (
     function() { 
      var ydata = jQuery(this).html(); 
      xdata = ydata.replace("[class]", ""); 
      jQuery('#seat-form-data').append(xdata); 
     } 
    ); 
    jQuery('#seat-form-data').append('<input type="submit" value="submit">'); 
    jQuery('#seat-form-data input[type="submit"]:first').trigger('click'); 
    //console.log(xdata); 


    // Link to open the dialog 
    $("#dialog").dialog("open"); 
    //event.preventDefault(); 
} 

}

Я пробовал:

seatId = $('#button').attr('id'); 
var btnId = this.attr('id'); 

И попытался показать его на консоли. Но это не сработает. Он говорит undefine. Я хочу получить indexbutton (кнопка id) на book_tickets().

ответ

0

Поскольку у вас есть жестко закодированный идентификатор, почему вы хотите получить к нему доступ любым другим способом. Вы можете жестко закодировать кнопку Id, не так ли?

Во всяком случае, одно решение передать ссылку Dóm функции как

<input type="button" name="submit" class="ui-state-default ui-corner-all" id="indexbutton" onclick="book_tickets(this)" value="Book Seat" /> 

затем

function book_tickets(el) { 
    var buttonId = el.id; 
    .... 
} 

Ваш код

seatId = $('#button').attr('id'); 
var btnId = this.attr('id'); 

$('#button').attr('id') будет искать элемент с идентификатором button, и если он будет найден, он вернет id этого элемента, который снова button, таким же образом this внутри метода book_tickets не относится к кнопке, это оконный объект, поэтому this.attr('id') не удастся.

Смежные вопросы