单击按钮时如何在js中获取活动按钮

时间:2015-10-12 07:12:22

标签: javascript jquery html5 css3

我在HTML页面中有3个按钮。当我点击search_track按钮时,我需要在javascript函数中获取哪个按钮(加拿大或美国)。我怎么能这样做?

<div class="buttons-track">
    <button class="btn-track active track-canada" id="canada"></button>
    <button class="btn-track track-usa" id="usa"></button>
</div>

<div class="col-xs-12  small-heading">Tracking Number</div>
<div class="col-xs-12 input-small">
    <input type="text" id="trackNum">
</div>
<div class="col-xs-12 input-small-submit">
    <input type="image" src="img/track.png" id="search_track">
</div>
</div>
.btn-track { 
    background: none; 
    border: none; 
    padding: 0; 
    width: 200px; 
    height: 98px; 
    display: inline-block; 
    margin-right: -4px;
}
.track-canada {  
    background: url(../img/canada.png) no-repeat;     
    background-size: contain;
}
.track-canada.active {  
    background: url(../img/canada-over.png) no-repeat; 
    background-size: contain;
}
.track-usa {  
    background: url(../img/usa.png) no-repeat; 
    background-size: contain; 
}
.track-usa.active {  
    background: url(../img/usa-over.png) no-repeat; 
    background-size: contain;
}

function search_track() {
    var canada = document.getElementById("canada").value;
    var usa = document.getElementById("usa").value;
}

请帮我知道哪个按钮在功能上有效?

2 个答案:

答案 0 :(得分:0)

问题是当用户点击第三个按钮时,美国或加拿大按钮失去焦点。您将始终将@Singleton class UserCache @Inject() { private val map: concurrent.Map[Long, User] = concurrent.TrieMap() def getUser(id: Long) = { map.getOrElseUpdate(id, getUserFromDb(id)) } } 按钮作为活动的焦点。

如果我理解你想要正确做什么,你应该添加一个事件处理程序到USA和Canada按钮来设置状态变量。然后你的search_track应该附加一个事件处理程序,它检查以确保在处理之前发送了状态。举个例子:

search_track

答案 1 :(得分:0)

您可以尝试通过jQuery查找活动类,之后您将使用.attr()函数获取id:

var country = $('.active').attr('id');

这将查找具有活动类的元素,并将ID存储在变量country中。然后,您可以使用它来检查选择了哪个国家/地区。