我正在尝试在 Bootstrap 模式中加载 PartialView。现在,当我在数据表中显示数据时,我正在代码中生成 URL,而我发现生成链接的最佳方法是通过代码。现在模式和一切都在启动,但我在任何地方都看不到部分 View 。我想将 ID 传递给这个部分 View ,以便它加载一些特定的数据。这是我在 C# 中的 URL:
dto.URL = String.Format("<a href=\"#myModal\" data-toggle=\"modal\"
id=\"{0}\" data-target=\"#edit-modal\">View Details</a>", item.Id);
翻译为:
<a href="#myModal" data-toggle="modal" id="20" data-target="#edit-modal">Select</a>
这是我的模式窗口:
<div id="edit-modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">Modal title</h4>
</div>
<div class="modal-body edit-content">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
这是我加载此部分 View 的 JavaScript:
$('#edit-modal').on('show.bs.modal', function (e) {
var $modal = $(this),
listId = e.relatedTarget.id;
$.ajax({
cache: false,
type: 'GET',
url: '/list/_getService/' + listId,
success: function (data) {
$modal.find('.edit-content').html(data);
}
});
})
我从来没有看到部分 View 启动,甚至在使用 Chrome 的 JS 调试器时也没有看到脚本被触发。任何帮助都会很棒。
最佳答案
如果有人需要帮助,我会这样解决:
$(function () {
$('#edit-modal').on('show.bs.modal', function (e) {
var id = e.relatedTarget.id;
var $modal = $(this);
$.ajax({
cache: false,
type: 'POST',
url: '/list/_getService/' + id,
success: function (data) {
$modal.find('.edit-content').html(data);
}
});
});
});
关于javascript - 将 PartialView 加载到 Bootstrap 模式中,同时传递 ID 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38427386/