MVC js加載兩遍

近期在項目開發(fā)過程中遇到的頁面加載小問題在這里簡單的總結(jié)一下。

1.點擊按鈕使用異步加載的方法去查詢列表內(nèi)容的時候,我發(fā)現(xiàn)執(zhí)行了兩遍。反復(fù)查看代碼都沒有找到原因。頁面中代碼如下所示:
 <form class="panel panel-default">
       <div class="panel-heading">
              列表
        </div>
         <div class="row wrapper">
               <div class="form-inline" role="form">
                     <div class="fr "  id="search">
                           <button class="btn btn-success"><i class="fa fa-search"></i>查詢</button>
                     </div>
              </div>
         </div>
   </form>

按鈕使用的button,而不是<input type='button' />這種形式,后來我就換了這種形式,發(fā)現(xiàn)結(jié)果就對了且是執(zhí)行一遍。后來經(jīng)過大牛一看,說原因肯定不是出在這里了。后來就反復(fù)再檢查代碼,最終是把最外層的form改成div,結(jié)果就對了。

由此總結(jié),如果頁面添加的是form表單,標簽內(nèi)部如果再使用button標簽,則頁面會把button自動識別為submit類型去執(zhí)行。因為submit執(zhí)行一次,button點擊事件又執(zhí)行一次。這才是最終原因。所以我們在寫代碼的過程中一定要記得把form表單和button標簽區(qū)分開來。


2.js生命周期

控制器中主頁面和副頁面我們一般會使用一個js文件去處理所有邏輯,最開始我不清楚執(zhí)行順序,我再每個頁面中都去引用這個js文件,這個時候你會發(fā)現(xiàn)副頁面的方法都會執(zhí)行兩遍。而實際是只要在主頁面中引用一次js文件就ok了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 之前在Sencha Cmd創(chuàng)建Ext JS示例項目演示了用Sencha Cmd來創(chuàng)建一個Login示例。在這里會演...
    寫意悠悠閱讀 9,123評論 4 24
  • 22年12月更新:個人網(wǎng)站關(guān)停,如果仍舊對舊教程有興趣參考 Github 的markdown內(nèi)容[https://...
    tangyefei閱讀 35,421評論 22 257
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽?zāi)J的外補...
    _Yfling閱讀 14,167評論 1 92
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 7,358評論 0 17
  • 土地里蜷縮的遒勁的生長的父親 深夜里對我說 對愛情要相信 我慘淡的微笑消失在密不透風的黑夜里 像吹落花瓣的最輕的風...
    ForeverFalling閱讀 571評論 2 1

友情鏈接更多精彩內(nèi)容