亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jQuery 函數無法使用 .load() 刷新 div 標簽

jQuery 函數無法使用 .load() 刷新 div 標簽

PHP
天涯盡頭無女友 2023-08-19 09:45:56
我正在使用 ajax post 將我的值發送到(uploadsignupeditadvcheck.php)。提交成功后,我需要刷新我的div標簽(galleryadv)以準備下次提交。我的 ajax 提交成功,但刷新后我的 jquery 函數不再工作。我很感激你們,可以幫助解決我的情況。謝謝。索引.php<script>    function uploadadv(){                  var idadv = document.getElementById("idadv").value;          var companynameadv = document.getElementById("companynameadv").value;            var usernameadv = document.getElementById("usernameadv").value;                  var aboutmeadv = $("#aboutmedecsadv").val();          var catadv = document.getElementById("catadv").value;          var typeadv = document.getElementById("typeadv").value;          var keywordadv = document.getElementById("keywordadv").value;            var addressadv = document.getElementById("addressadv").value;              var countryadv = document.getElementById("countryadv").value;          var zipadv = document.getElementById("zipadv").value;          var stateadv = document.getElementById("stateadv").value;          var cityadv = document.getElementById("cityadv").value;           var urladv = document.getElementById("urladv").value;           var priceadv = document.getElementById("priceadv").value;           var advstamp = document.getElementById("advstamp").value;                        jQuery.ajax({        type: "POST", // HTTP method POST or GET        url: "uploadsignupeditadvcheck.php", //Where to make Ajax calls        dataType:"text", // Data type, HTML, json etc.        data:myData, //Form variables        success:function(data){                        $('#messageeditcheckadv').html(data);        },uploadsignupeditadvcheck.php$(".galleryadv").load(location.href+" .galleryadv>*");
查看完整描述

1 回答

?
SMILET

TA貢獻1796條經驗 獲得超4個贊

您正在覆蓋之前附加事件處理程序的 dom 元素。因此,您首先將單擊事件附加到按鈕,然后加載新的 HTML 并覆蓋附加了處理程序的按鈕,以便新按鈕沒有附加事件處理程序,這就是它們不響應單擊事件的原因。


將事件處理程序附加到不會被覆蓋的父元素,或者在加載并用新 html 覆蓋后重新附加事件處理程序。


我可能會選擇將事件附加到其父級,這樣當事件在 dom 樹上傳播時它就會得到處理。


var buttons_parent = $('.galleryadv');


buttons_parent.on('click', '.avatar-galleryadv', function(){    

    $(this).hide(0);   

    $('.avatar-previewgalleryadvsave').fadeIn(300);

});


buttons_parent.on('click', '.avatar-previewgalleryadvsave', function(){

    $(this).hide(0);   

    $('.avatar-galleryadv').fadeIn(300);

});

這代替了btn_edit.on("click", function() {...和 btn_save.on("click", function() {...。另外,我不會通過保存在變量中的引用來引用處理程序內的按鈕,因為這些按鈕在覆蓋它們后將無效,因此我總是通過它們的類名來查找它們。


這樣,即使按鈕被覆蓋,處理其單擊事件的處理程序也完好無損。


查看完整回答
反對 回復 2023-08-19
  • 1 回答
  • 0 關注
  • 143 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號