、Jquery無刷新提交表單
可以使用$.ajax或者$.post 都可以,代碼也一樣。
使用$("#form的ID").serialize();獲取表單數據,
代碼如下:
var posturl='處理提交數據的頁面';
var parms=$("#form的ID").serialize();//獲取form內表單數據
//返回值為json
$.post(posturl,parms, function(data) {
//需要把返回值轉為json
var ressuobj=JSON.parse(data);
if(ressuobj.error=='0000'){
alert(ressuobj.msgstr);
return false;
}else{
//提示錯誤信息,或者是錯誤編碼
//根據自己的需要提示
alert(ressuobj.msgstr);
return false;
}
})
2、jquery彈窗
1)alert確認彈窗
在提交表單的時候,如果為空會彈出一個窗口給出提示,日常使用alert;但是效果達不到我們的要求覺得不美觀,需要我們自己制作div變相實現彈窗。以上傳圖片,沒有選擇圖片點擊上傳為例:
圖1 Jquery alert彈窗確認效果圖
首先要制作好遮罩層,設置寬度高度100%;z-index:9;背景色透明度以及fixed,設置隱藏。
其次制作div的彈窗,z-index要比遮罩層的大,這樣就可以漂浮到遮罩層的上邊,同樣隱藏。
在我們平時使用alert提醒的地方,不再執行alert,而是使用jquery顯示遮罩層,還有div窗口,點擊確認的時候,遮罩層,div窗口隱藏。
遮罩層和div彈窗我是放到了頁面底部,也可以寫入js里邊,沒有什么區別
代碼如下:
$(".zzc").show();
$(".divtc").show();
//zzc divtc為遮罩層,div的class
$(".confirm").click(function(){
//confirm 為確認按鈕的class
$(".zzc").hide();
$(".divtc").hide();
})
我們可以對該提醒的方法封裝,以后只要傳入提示的信息,而不必每次都要寫show hide。
2)confirm確認彈窗
圖2 jquery 刪除確認效果圖
(1)如果是文章后邊的刪除,也就是刪除單條文章,<a class='delconfi' datalink='刪除文章的URL'>刪除</a>
不能寫href,通過jquery 獲取data-link在js內跳轉
$(".delconfi").click(function(){
var datalink=$(this).attr('datalink');
$(".zzc").show();
$(".divtc").show();
//zzc divtc為遮罩層,div的class
$(".quxiao").click(function(){
//quxiao 為取消按鈕的class
$(".zzc").hide();
$(".divtc").hide();
});
$(".confirm").click(function(){
//confirm 為確認按鈕的class
window.location.href=datalink;
//跳轉到其他頁面 是否隱藏遮罩層已經沒有關系
});
})
(2)文章列表多選的刪除
文章放到form內,刪除按鈕只是一個簡單的button按鈕,不是submit,form加上id=myform;
當點擊確認按鈕以后,將上述代碼的跳轉,換成$("#myform").submit();
$(".confirm").click(function(){
$("#myform").submit();
});
3、添加文章會用到富文本編輯器編輯文章內容
1)如果編輯器集成了php上傳圖片,要檢查下是不是驗證了安全性,防止圖片木馬;
2)如果默認上傳圖片在文本編輯器所在文件夾,我們要做一下修改,存放圖片的文件夾放到外邊,也就是不要和編輯器在一個文件夾;
3)我們修改編輯器原來的文件夾名稱,如果為多個客戶開發,可以為每個客戶設置不同的文件夾名稱;
4、mysql主表附表
當表中數據過多的時候,分頁是比較慢的,所以做之前我們要做好規劃。
thinkphp6 join 關聯查詢:
數據很多,開始建表,我就可以創建2個表(主表和附表)主表存放主要的ID,名稱,存放得越少越好,附表存放其他的比如ID,內容,時間,分類,unionid等,2個表的ID不一定相同的,需要unionid字段關聯。讀取的時候使用join關聯。
如果使用了表前綴,這里需要獲取,Config實際上就是讀取config文件夾下的文件,例如:讀取數據庫Config("database"),讀取session配置就是Config("session"),Config("文件名稱"),打印出來或者我們打開database.php可以看到在prefix最后一層。這里我是一層一層地選出來的,可能有別的方法直接讀取,我沒去查看。
//dump(config("database"));
$prefix=Config("database.connections.mysql.prefix");
Db::name('web_zhubiao')
->alias('a')
->join($prefix."web_fubiao b",'a.id=b.unionid')
->field('a.id.b.name')
->后邊就是條件
//字段都要加上代表表的a b例如:a.id>11
經過測試:表有多個字段讀取2個和表中就有這2個字段讀取,執行效率是不同的越少讀取的越快。
外媒報道,jQuery近日發布安全更新,修復了一個名為原型污染(prototype pollution)的罕見安全漏洞,該漏洞允許黑客通過某種手段修改JavaScript對象的prototype。
圖片來源于創客貼
當前74%的網站使用的是jQuery JavaScript庫,且其中大多數網站仍使用受該漏洞影響的庫1.x和2.x版本。黑客可將其控制的prototype注入對象,觸發JavaScript異常發動拒絕服務攻擊,或篡改應用程序源代碼注入黑客的代碼路徑,最終導致應用程序崩潰或被接管。
據悉,JavaScript對象可包含基于預定義結構的多個值 (var car={type:"Fiat", model:"500", color:"white"}),且prototype定義了JavaScript對象的默認結構和默認值,因此即使沒有為對象賦值,應用程序也不會崩潰。
圖片來源于pixabay
值得慶幸的是,大部分網站主要將jQuery用于操作動畫菜單或創建彈窗,且每段攻擊代碼均需根據目標進行微調,因此該漏洞并不能被大規模利用。
截至目前,研究人員已發布該漏洞的概念驗證PoC代碼(https://github.com/jquery/jquery/pull/4333),其中包含攻擊原理和規避方法。專家建議用戶升級至最新版本jQuery3.4.0以保護網站和應用程序。
圖片來源于pixabay
來源:http://u6.gg/swrD7,“ISEC安全e站”獨家編譯,轉載請注明出處及本文鏈接。
注本頭條號,專注做前端
今天要介紹的是基于vueJS 的彈窗組件 ——messagebox.js ,彈窗插件很多基于jquery的更多,它唯一的不同之處在于是基于vueJS做的,可以用到vue的項目中,支持回調
//
*請認真填寫需求信息,我們會在24小時內與您取得聯系。