繁体   English   中英

如何在asp.net MVC中获取多个控件的自动生成的ID?

[英]how to get auto generated id of multiple controls in asp.net mvc?

我有按钮和一个下拉列表是动态生成的。 我想在页面加载时访问下拉菜单的ID,但自动生成的ID仅给我第一个下拉菜单的ID(请看一下脚本)。 请告诉我如何正确缩进代码

<div class="row">
<div class="col-md-9">
<div data-id="@data.id" id="Monday_@data.id">
@foreach (var slot in data.avail_slots)
{
if (slot.day == "Monday"){
<div class="col-md-3 col-xs-4" style="line-height:2em;">
<button id="appointment_click" data-toggle="modal" data-target="#confirmation" style="margin-bottom:4px" class="pull-left btn btn-pill btn-primary">@slot.time</button>
</div>
}}
</div>
<div data-id="@data.id" id="Tuesday_@data.id">
@foreach (var slot in data.avail_slots)
{if (slot.day == "Tuesday")
{<div class="col-md-3 col-xs-4" style="line-height:2em;">
<button id="appointment_click" data-toggle="modal"data-target="#confirmation" style="margin-bottom:4px" class="pull-left btn btn-pill btn-primary">@slot.time</button>
</div>
}
}
</div>
<div data-id="@data.id" id="Wednesday_@data.id">
@foreach (var slot in data.avail_slots)
{if (slot.day == "Wednesday")
{
<div class="col-md-3 col-xs-4" style="line-height:2em;">
<button id="appointment_click" data-toggle="modal" data-target="#confirmation" style="margin-bottom:4px" class="pull-left btn btn-pill btn-primary">@slot.time</button>
</div>
}
}
</div>
<div data-id="@data.id" id="Thursday_@data.id">
@foreach (var slot in data.avail_slots){
if (slot.day == "Thursday"){
<div class="col-md-3 col-xs-4" style="line-height:2em;">
<button id="appointment_click" data-toggle="modal" data-target="#confirmation" style="margin-bottom:4px" class="pull-left btn btn-pill btn-primary">@slot.time</button></div>
}}
</div>
<div data-id="@data.id" id="Friday_@data.id">
@foreach (var slot in data.avail_slots){
if (slot.day == "Friday"){
<div class="col-md-3 col-xs-4" style="line-height:2em;"> 
<button id="appointment_click" data-toggle="modal" data-target="#confirmation" style="margin-bottom:4px" class="pull-left btn btn-pill btn-primary">@slot.time</button>
</div>
}}
</div>
<div data-id="@data.id" id="Saturday_@data.id">
@foreach (var slot in data.avail_slots){
if (slot.day == "Saturday") {
<div class="col-md-3 col-xs-4" style="line-height:2em;">
<button id="appointment_click" data-toggle="modal" data-target="#confirmation" style="margin-bottom:4px" class="pull-left btn btn-pill btn-primary">@slot.time</button></div>
}
}
</div>
<div data-id="@data.id" id="Sunday_@data.id">
@foreach (var slot in data.avail_slots){
if (slot.day == "Sunday"){
<div class="col-md-3 col-xs-4" style="line-height:2em;">
<button id="appointment_click" data-toggle="modal" data-target="#confirmation" style="margin-bottom:4px" class="pull-left btn btn-pill btn-primary">@slot.time</button></div>}}
 </div>
 </div>         
 <div class="col-md-3">
 <select data-id="@data.id" id="days_@data.id" class="temp">
@foreach (var d in ad_list){
<option value="@d.id">@d.day_name</option>}
</select>
</div>

<script>
var today_number = new Date().getDay();
var today = get_all(today_number)
$('select>option:eq(' + today_number + ')').attr('selected', true);
var id = $('.temp').attr('data-id');


</script>

<select data-id="@data.id" id="days_@data.id" class="temp">语句在foreach循环之外。 如果打算生成多个下拉列表,则将select语句放入foreach循环中,如下所示:

@foreach (var d in ad_list)
{
    <select data-id="@data.id" id="days_@data.id" class="temp">
        <option value="@d.id">@d.day_name</option>
    </select>
}

您需要查看页面上具有许多相同ID的当前正在生成的ID,这将导致您遇到问题。

但是,只有一个ddl,并且不需要动态生成的ID。 它在循环之外。

如果您确实需要动态生成ID,请在此处查看

暂无
暂无

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

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