我正在尝试在Bootstrap popover中创建一个按钮,该按钮在Razor killDatabase
中运行时将Razor值传递给另一个名为foreach
的JavaScript函数。代码生成一个可以选择的按钮列表,但我也希望能够点击一个按钮并删除其中一个选项。代码不会抛出任何错误,除了事实上任何删除按钮将始终删除最后一个元素,而不是它应该与之关联的元素之外,一切都能正常工作。我假设这是因为函数在onclick
上调用,所以在那一点@str
只是最后一个元素的名称,但我想知道是否有任何方法可以将该值存储为每个元素都独一无二?我尝试在foreach
中添加一个JavaScript变量,但仍遇到同样的问题。
<div class="btn-group-vertical btn-block" data-toggle="buttons" id="btns">
@foreach (var str in Model)
{
<div id="popover-content" hidden>
Are you sure you would like to permanently delete this query from the database?<br />
<button onclick="killDatabase('@str')" class="btn btn-primary btn-sm" style="float:left; margin-bottom: 10px;">Yes</button>
<button class="btn btn-sm btn-primary" style="float:left;">No</button>
</div>
<label class="btn btn-default" style="height:auto">
<div class="form-group" style="height:auto; padding-bottom: 10px;">
<input type="radio" name="query" value="@str" />
<span class="pull-left">@str</span>
<span class="pull-right">
<button class="btn btn-sm btn-danger" style="margin-top:-2px;" data-toggle="popover" title="Confirm Deletion" data-placement="bottom">
<span class="glyphicon glyphicon-trash"></span></button></span>
</div>
</label>
}
</div>
答案 0 :(得分:0)
所以我要关闭这个问题,因为我对AJAX非常困惑。这就是它归结为:我有一个糟糕的AJAX调用,我试图在页面加载后初始化的popover上做事情,所以任何时候我都会尝试在弹出窗口中使用@str
值,它只需要最近的价值。我已经将代码重新编写成更简化,更少错误的设计,现在它工作正常。感谢所有试图提供帮助的人