繁体   English   中英

如何获取按钮ID

[英]How to get button id

我有一个文件Index.aspx连接到文件seatbooks.js
Index.aspx有一个ID为Indexbutton的按钮。 Indexbuttoneventonclick='book_ticket()' book_ticket()方法是包括上seatbooks.js 如何获取按钮的ID( Indexbutton上) book_ticket() 请检查下面的代码:

 <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 ()上获取indexbutton (按钮ID book_tickets()

由于您具有硬编码的ID,因此为什么要通过任何其他方式访问它。 您可以对按钮ID进行硬编码,不是吗?

无论如何,一种解决方案是将dom引用传递给类似

<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')将寻找ID的元素button ,如果发现它会返回id该元素这又是一个button ,同样this里面book_tickets方法并不是指到按钮,它是窗口对象,因此this.attr('id')将失败。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM