第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我的代碼第一次可以渲染本地的時間出來,當我點擊上個月和下個月的按鈕時?

我點擊按鈕后,在控制臺輸出了HTML是正確的,但是,在頁面的顯示還是停留在第一次渲染的界面,不知道怎么回事?其他代碼和老師的一模一樣,我把我的render發(fā)上來

	datepicker.render?=?function(direction){
		var?year,month;
		if(monthDate){
		?year?=?monthDate.year;
		?month?=?monthDate.month;}
		if(direction?===?'prev')?month--;

		if(direction?===??'next')?month++;
		//?console.log(month);
			var?html?=?datepicker.buildUi(year,month);
		//?document.body.innerHTML?=?html;
			//?$wrapper?=?document.querySelector('ui-datapicker-wrapper')
			//?if(!$wrapper){
		???		$wrapper?=?document.createElement('div');
				
				$wrapper.className?=?'ui-datapicker-wrapper';
			//?}
				$wrapper.innerHTML?=?html;document.body.appendChild($wrapper);
				console.log(html);

	}


正在回答

2 回答

chrome 里查看頁面元素,可以看到,沒點擊一次按鈕,就創(chuàng)建一個wrapper,但后來創(chuàng)建的在init創(chuàng)建的下層,因此看起來數(shù)據(jù)是更新了,但頁面展示卻還是init的情況。所以,樓上真的很厲害,在你的解答里,我才知道,判斷wrapper是否存在是非常重要的。當容器存在才時候,就只是更新內(nèi)部的HTML即可。

0 回復 有任何疑惑可以回復我~

寫成這樣就行了:

datePicker.render = function(direction) {
??var year, month;
??if (monthData) {
???year = monthData.year;
???month = monthData.month;
??}

??if (direction === 'prev') month--;
??if (direction === 'next') month++;

??var html = datePicker.buildUi(year, month);
??if (!$wrapper) {
???$wrapper = document.createElement('div');
???$wrapper.className = 'ui-datepicker-wrapper';
???document.body.appendChild($wrapper);
??}
??$wrapper.innerHTML = html;
?}


5 回復 有任何疑惑可以回復我~
#1

人艱不拆8

細心沒大錯
2017-11-08 回復 有任何疑惑可以回復我~
#2

玫瑰湖的牧羊人

思路很正確 判斷原來wrapper元素是否存在很重要 不然會在后面不斷追加元素而只顯示第一次渲染的結果
2017-11-18 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么我的代碼第一次可以渲染本地的時間出來,當我點擊上個月和下個月的按鈕時?

我要回答 關注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號