在View中添加了一段jQuery代碼用來控制一個按鈕的點擊事件。發現運行時提示$對象沒有定義,經過在瀏覽器右鍵查看源文件發現,script代碼在引用jquery代碼的上方,執行時jquery還未引入,找到模板文件_Layout.cshtml在頁面下方看到@RenderSection("Scripts", required: false) 於是回到View文件中將script代碼放置在范圍中,最終運行時會將@section Scripts 之間的代碼放到@RenderSection這個占位符的位置,從而問題解決,果然自己MVC經驗不足,之前學過的知識也忘記了,才出現這個窘境。看來還是要多多學習。准備將多年的老項目由asp.net 升級到MVC。
@{ ViewData["Title"] = "QRLogin"; } <br /> <a class="btn btn-lg btn-default" id="btnShowQRCode">獲取二維碼</a> <img id="imgQRCode" /> @section Scripts { <script type="text/javascript" language="javascript"> $().ready(function () { $("#imgQRCode").hide(); }); </script> }