Python 學習第十八天 js 正則及其它前端知識

一,js 正則表達式css

  test 判斷制度串是否符合規定的正則html

  (1)定義正則表達式匹配規則jquery

          js 中定義正則表達式爲rep=/\d+/,兩個//之間爲正則模式正則表達式

  (2)rep.test("assdsda89sdasdas") ,返回true,通常test 方法爲只要字符串中的包含正則模式即返回truedjango

  (3)rep=/^\d+$/徹底匹配正則模式函數

    exec 獲取匹配的數據post

  1, (1)rep=/\d+/;網站

    (2)str="wangshen_67_houyanfa_20"url

    (3)rep.exec(str) 返回["67"]debug

  2,   js exec 分組匹配

text="JavaScript is more fun than Java or JavaBeans!"
var pattern = /\bJava(\w*)\b/;                           
pattern.exec(text)                              #返回 ["JavaScript", "Script"]

     3,js exec 全局匹配

text="JavaScript is more fun than Java or JavaBeans!"
var pattern = /\bJava\w*\b/g;
pattern.exec(text)
# ["JavaScript"]
pattern.exec(text)
# ["Java"]
pattern.exec(text)
# ["JavaBeans"]
pattern.exec(text)
# null
pattern.exec(text)        #加g表示全局匹配,匹配一個輸出一個,當所有匹配完成時輸出null 再匹配從頭開始

   4,js exec 全局加分組匹配

JavaScript is more fun than Java or JavaBeans!
var pattern = /\bJava(\w*)\b/g;
# ["JavaScript",'Script']
# ["Java", ""]
# ["JavaBeans", "Beans"]
# null                                              #分組匹配會對匹配到的結果再進行一次匹配
		 

 5,其它匹配模式

  (1)/.../i 不區分大小寫

  (2)/.../m 表示多行匹配,js 中默認支持多行匹配,也就是單獨加g也能夠完成多行匹配,可是在匹配模式中^$,匹配多行時須要m參數

       例如

text="JavaScript is more fun than \n  Java or JavaBeans!"
var pattern = /\bJava(\w*)\b/g;
pattern.exec(text)                               #返回["JavaScript",'Script'] 也能夠匹配成功,表示默認支持多行
text="JavaScript is more fun than \n  Java or JavaBeans!"
var pattern = /^Java(\w*)/g;                     #匹配以Java開頭的字符串,且後面爲任意字符
pattern.exec(text)                               #返回["JavaScript",'Script'] 
pattern.exec(text)                               #返回null 

var pattern = /^Java(\w*)/gm; 
pattern.exec(text)                                #返回["JavaScript",'Script'] 
pattern.exec(text)                                #返回["Java",""]

 6,a標籤綁定事件

<a onclick='return Func();'>asdf</a>
function Func(){
    return false:                                  #利用DOM綁定方式增長a標籤事件
}

<a>asdf</a>
$('a').click(function(){return false;})    #利用jquery方式綁定事件

 7,form 表單提交事件

<form>		
	<input type='text' />
	<input type='password' />
	<input type='submit' />		
</form>
   
$(':submit').click(function(){		
    $(':text,:password').each(function(){
				...
		return false;
	})
	return false;
}) 

 8,標籤訂義事件執行順序

  像a input submit 標籤通常默認都爲自定義事件先執行,checkbox 默認事件先執行

 9,css設置重要性

<style>
    .no-radus{
     border-radius:0 !important;
}
</style>

 二,django

 1,django 設置靜態文件路徑

  在setting.py中最下面添加添加如下代碼 

STATIC_URL = '/static/'
STATICFILES_DIRS = { os.path.join(BASE_DIR,'static'), }

 2,建立完django project 後的操做

(1),配置模板的路徑

TEMPLATES = [
				{
					'BACKEND': 'django.template.backends.django.DjangoTemplates',
					'DIRS': [os.path.join(BASE_DIR, 'templates')],
					'APP_DIRS': True,
					'OPTIONS': {
						'context_processors': [
							'django.template.context_processors.debug',
							'django.template.context_processors.request',
							'django.contrib.auth.context_processors.auth',
							'django.contrib.messages.context_processors.messages',
						],
					},
				},
			]

(2),配置靜態文件的路徑

#在 setting.py 中添加
STATICFILES_DIRS = (
	os.path.join(BASE_DIR, 'static'),
)
#在html中添加
<link rel="stylesheet" href="/static/commons.css" />
		

 3,view.py獲取用戶提交的數據

if request.method == "post":

    user = request.POST.get(‘user',None)
    pwd = request.POST.get('pwd',None)                #獲取用戶提交的數據中 即便不存在相應的值也不會報錯
    
    user = request.POST['user']
    pwd = request.POST['pwd']                         #獲取用戶提交的數據。若是不存在就會報錯

 4,view.py中函數處理重定向到其它網址

from django.shortcuts import redirect    #導入模塊

return redirect('http://www.baidu.com')   #在view函數中添加,重定向到其它網站
 
from django.shortcuts import render
return render(request,'login.html') #找到本地的模板,打開html文件

 5,render 返回錯誤信息

  return render(request,'login.html',{'error_msg':error_msg})

 6,django 處理html模板for 循環與取某一個值

{% for row in user_list %}
    <tr>    
        <td>{{ row.username }}</td>
        <td>{{ row.gender }}</td>
        <td>{{ row.email}}</td>
   </tr>
{ %endfor %}                                          #部分html代碼

def home(request):
    return render(request,'home.html',{'user_list': USER_LIST}}     #部分views.py代碼

 7,css input 框中提示字設置

<input type="text" name="username" placeholder="用戶名" />

 8,django 已get方式獲取值,須要在url中增長值
     例如:

http://127.0.0.1:8009/home?nid=123&name=jack  #get方式請求

#views函數中
print(request.GET) 
#返回
<QueryDict:{'name':[alex],'nid':['123']}>      
print(request.GET.get('nid'))
#返回
123       
相關文章
相關標籤/搜索