前端筆記

anwebDesigner發表於2018-01-25

1、給JS動態生成的元素繫結事件

正常情況下新增點選事件用

$("#btn").click(function(){});

但是一些JS動態生成的元素這個方法就不行。這時要用.on方法;

.on()適用於當前及未來元素。$(selector).on(event,childSelector,data,function,map)

例如:

$("#btn ul li").on("click",function(){  
    $(this).css("border","5px solid #000");  
});  



2、AJAX如何給外層函式傳值

給外層函式傳值一定要用非同步傳輸

function selectname(data){
	var fanhuizhi;
	$.ajax({
		type:"post",
		url:"./php/login.php",
		async:false,//這裡選擇非同步為false,那麼這個程式執行到這裡的時候會暫停,等待資料載入完成後才繼續執行 這樣函式才能獲取ajax的返回值
		data:{
			name:data
		},
		success: function (result) {
			fanhuizhi = result;
		},
		error:function(){
			console.log("傳送失敗");
		}
	});
	return fanhuizhi;
};

3、如果用fromdata來上傳圖片,新增blob物件時要注意。

data.append("myfile", myBlob, "filename.txt");

使用appned()方法時,可以通過第三個可選引數設定傳送請求的頭 Content-Disposition 指定檔名。如果不指定檔名(或者不支援該引數時),將使用名字“blob”。

如果預設不寫第三個引數,後臺php獲取ajax傳遞過來的fromdata資料的時候,讀取檔名就是“blob”,沒有字尾。檢查檔案字尾會報錯。


4、(function(){})()匿名函式,不產生全域性變數,當然也不能呼叫全域性變數。定義完後馬上執行。

相關文章