最近在給客戶開發一個CRM系統,其中用到了BOOTSTRAP的模態框。版本是3。由于是剛開始用該框架。所以在正式部署到項目中前,需要測試一下,找到框架中的如下部分。需要說明的是。我用的asp.net mvc框架開發。測試也是在asp.net? mvc環境下。
?復制版本3中的代碼如下:
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@mdo">Open modal for @mdo</button>
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@fat">Open modal for @fat</button>
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@getbootstrap">Open modal for @getbootstrap</button>
...more buttons...<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"><div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button><h4 class="modal-title" id="exampleModalLabel">New message</h4></div><div class="modal-body"><form><div class="form-group"><label for="recipient-name" class="control-label">Recipient:</label><input type="text" class="form-control" id="recipient-name"></div><div class="form-group"><label for="message-text" class="control-label">Message:</label><textarea class="form-control" id="message-text"></textarea></div></form></div><div class="modal-footer"><button type="button" class="btn btn-default" data-dismiss="modal">Close</button><button type="button" class="btn btn-primary">Send message</button></div></div></div>
</div>
上述代碼經過改造,放在自己的mvc環境中:
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="s">Open modal for s</button><div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"><div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button><h4 class="modal-title" id="exampleModalLabel">New message</h4></div><div class="modal-body"><form><div class="form-group"><label for="recipient-name" class="control-label">Recipient:</label><input type="text" class="form-control" id="recipient-name"></div><div class="form-group"><label for="message-text" class="control-label">Message:</label><textarea class="form-control" id="message-text"></textarea></div></form></div><div class="modal-footer"><button type="button" class="btn btn-default" data-dismiss="modal">Close</button><button type="button" class="btn btn-primary">Send message</button></div></div></div></div>
</div>
?運行,結果沒法彈出模態框。后仔細查找發現問題出在button的代碼上面:
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="s">Open modal for s</button>
發現該代碼是bootstrap 3版本的寫法,遂換成如下bootstrap 5的寫法:
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModal" data-whatever="hello">Open modal for hello</button>
然后OK!