我正在尝试使用jquery从单击的元素中获取id。
例如,用户点击我希望ID存储在变量中的<a></a>
元素。我知道如何使用<select></select>
元素来管理它,但不知道如何使用包含链接的简单菜单来管理它。
预览:
源代码:
<div class="list-group no-border mb-5">
<a id="background" class="list-group-item"><i class="icon-bucket"></i> Profile Background</a>
<a id="boxes" class="list-group-item"><i class="icon-cube"></i> Profile Boxes</a>
<a id="fonts" class="list-group-item"><i class="icon-font"></i> Profile Fonts</a>
<a id="highlights" class="list-group-item"><i class="icon-stack-empty"></i> Profile Highlights</a>
<a id="content" class="list-group-item"><i class="icon-markup"></i> Profile Content</a>
<a id="media" class="list-group-item"><i class="icon-video-camera2"></i> Profile Media</a>
</div>
有没有人有想法?
答案 0 :(得分:4)
var theID;
$('a').click(function(){
theID = this.id;
})
var theID;
$('a').click(function(){
theID = this.id;
console.log(theID);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="list-group no-border mb-5">
<a id="background" class="list-group-item"><i class="icon-bucket"></i> Profile Background</a>
<a id="boxes" class="list-group-item"><i class="icon-cube"></i> Profile Boxes</a>
<a id="fonts" class="list-group-item"><i class="icon-font"></i> Profile Fonts</a>
<a id="highlights" class="list-group-item"><i class="icon-stack-empty"></i> Profile Highlights</a>
<a id="content" class="list-group-item"><i class="icon-markup"></i> Profile Content</a>
<a id="media" class="list-group-item"><i class="icon-video-camera2"></i> Profile Media</a>
</div>
答案 1 :(得分:1)
您可以通过多种方式解析因使用jQuery而单击哪个元素的ID。您只需要确保在适当的范围内(即在点击事件之外)定义变量:
<script>
// Example variable
var clickedId;
// jQuery code here
</script>
然后定义一个单击事件处理程序以选取任何单击事件并使用this.id
或$(this).attr('id')
设置变量,这将返回所单击元素的ID属性(即{{1} }):
this
示例强>
<script>
// Example variable
var clickedId;
$(function(){
// When any link is clicked
$('a').click(function(){
// Set your variable
clickedId = this.id; // or clickedId = $(this).attr('id');
});
});
</script>
&#13;
// Example variable
var clickedId;
$(function(){
// When any link is clicked
$('a').click(function(){
// Set your variable
clickedId = this.id; // or clickedId = $(this).attr('id');
console.log(clickedId + ' was stored in clickedId');
});
});
&#13;
答案 2 :(得分:0)
var id;
$(".list-group-item").click(function() {
id = $(this).attr('id');
// Then do something with your id..
})
答案 3 :(得分:0)
您可以使用它来获取当前点击的元素(标记[HttpGet]
public PartialViewResult Search()
{
List<CategoryViewModel> model = new List<CategoryViewModel>();
... Some codes ...
return PartialView("_SearchForm", model);
}
[HttpPost]
public PartialViewResult Search(List<CategoryViewModel> cvm, DateTime? start, DateTime? end, string query = "")
{
List<EditViewModel> model = new List<EditViewModel>();
... Bunch of extranneous code ...
return PartialView("_SearchResults", model);
}
)
a
&#13;
$( document ).ready(function() {
$("a").click(function(evt){
console.log(evt.target.id);
})
});
&#13;
答案 4 :(得分:0)
Jquery在用户点击某些内容时有.click()事件。 http://api.jquery.com/click/
用于获取id等属性的.attr()方法。 http://api.jquery.com/attr/
例如:
var clicked_id
$(a).click(function() {
clicked_id = $(this).attr('id');
}