<address id="ttjl9"></address>

      <noframes id="ttjl9"><address id="ttjl9"><nobr id="ttjl9"></nobr></address>
      <form id="ttjl9"></form>
        <em id="ttjl9"><span id="ttjl9"></span></em>
        <address id="ttjl9"></address>

          <noframes id="ttjl9"><form id="ttjl9"></form>

          動態生成的DOM做點擊事件無效

          2021-7-21    前端達人

          有時候我們的標簽都是從后臺獲取的數據,然后利用JS添加到頁面上,當我們寫生成的標簽的點擊事件(click)時沒有效果。

          例如:

          復制代碼
          <section> 測試動態生成的DOM點擊事件 <br />
              </section>       
                  <script src="jquery-1.11.2.min.js"></script>
                  <script> $(function () {
                          $.ajax({
                              type: "post",
                              url: "Handler1.ashx",
                              data: {},
                              success: function (data) {
                                  $("section").append(data); //把獲取的標簽動態添加到頁面中 }
                          })
                      });
                      $("#test").click(function () {
                          alert("Smile");
                      }) </script>
          復制代碼

          生成頁面,點擊A標簽無效果。

          這里只介紹兩種解決方法。

          ①把事件寫在生成的字符串當中,感覺很low

          里面什么方法名外面就聲明一個(需要帶參就傳參)。

          ②我一般喜歡在JS里面直接寫點擊事件,不喜歡在標簽里面寫事件

           我們直接寫這個標簽的點擊事件是沒效果的,我們就換個寫法,利用On來完成。

           

           這樣也可以完成點擊事件。

           

           

          另附:a標簽的href也是可以執行腳本的,點擊事件也會執行腳本,點擊事件優先,然后在執行href鏈接。

           

           下載一般都是把A標簽的Href給個一般處理程序的鏈接(參數就用?傳值)。但我這個下載的參數是動態生成的,在后臺生成字符串的時候沒有參數。需要在前臺根據用戶選擇的來進行傳遞參數。所以需要我們動態生成Href的鏈接

           

          復制代碼
            //下載 $("#uploadInfo").click(function () { var uids = "";
                      $(":checkbox[name='A']:checked").each(function (i, item) {
                          uids += $(item).attr("data-id") + ",";
                      }) if (uids === "") {
                          NewAlertBox("warning","請最少選擇一項",2000);
                      } else { var urls = "GroupTeamUserListDocUpload.ashx?CaseID=" + CaseID + "&UID=" + uids;
                          $(this).attr("href", urls);  //執行完了點擊事件,把Href賦值,然后自動跳轉href鏈接 }
          
                  });

          1

          藍藍設計建立了UI設計分享群,每天會分享國內外的一些優秀設計,如果有興趣的話,可以進入一起成長學習,請掃碼藍小助,報下信息,藍小助會請您入群。歡迎您加入噢~~希望得到建議咨詢、商務合作,也請與我們聯系。

          截屏2021-05-13 上午11.41.03.png


          文章來源:博客園

          分享此文一切功德,皆悉回向給文章原作者及眾讀者.
          免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。

          藍藍設計www.syprn.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務

          日歷

          鏈接

          個人資料

          藍藍設計的小編 http://www.syprn.cn

          存檔

          亚洲va欧美va天堂v国产综合