最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django Form設(shè)置文本框?yàn)閞eadonly操作

 更新時(shí)間:2020年07月03日 15:35:36   作者:939397232  
這篇文章主要介紹了Django Form設(shè)置文本框?yàn)閞eadonly操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

用Django開(kāi)發(fā)網(wǎng)站的時(shí)候,前端頁(yè)面內(nèi)的文本框總是不能被設(shè)置為只讀,找了一些資料發(fā)現(xiàn)可以在form class里面進(jìn)行設(shè)置。

方法一:

首先在自己創(chuàng)建的form.py文件中創(chuàng)建一個(gè)my_info_form 類:

** In form.py file **

""" 1. 利用Django form創(chuàng)建自己需要的表單 """
class my_info_form(forms.Form):
 user_id = forms.IntegerField()
 user_name = forms.CharField(max_length=254)
 email = forms.EmailField()

""" 上面的這一小段代碼就可以在頁(yè)面上顯示出一個(gè)表格, 但是表格里面的文本框IntegerField, CharField, EmailField都處于可編輯狀態(tài)。 
大多數(shù)情況下我們不想要用戶可以隨意更改頁(yè)面展示的內(nèi)容,所以需要對(duì)這些文本框進(jìn)行設(shè)置來(lái)改變可編輯狀態(tài)。
代碼如下: """

 def __init__(self, *args, **kwargs):
 super(forms.Form, self).__init__(*args,**kwargs)
 self.fields['user_id'].widget.attrs['readonly'] = True
 self.fields['user_name'].widget.attrs['readonly'] = True
 self.fields['email'].widget.attrs['readonly'] = True

""" 編寫__init__()方法,
首先, 要調(diào)用super(forms.Form, self).__init__(*args,**kwargs), 注意這里的__init__()方法里沒(méi)有self。*args會(huì)傳遞要展示的信息, **kwargs會(huì)傳遞改變文本框格式的信息。 如果不調(diào)用super方法, 會(huì)報(bào)no fields 錯(cuò)誤。

第二, 更改文本框編輯狀態(tài):

self.fields['user_id'].widget.attrs['readonly'] = True
self.fields['user_name'].widget.attrs['readonly'] = True
self.fields['email'].widget.attrs['readonly'] = True

第三, 試著運(yùn)行一下, 你會(huì)發(fā)現(xiàn)文本框已經(jīng)不能進(jìn)行編輯了!
"""

方法二:

""" 
在創(chuàng)建文本框的時(shí)候?qū)嵱肈jango的widget 設(shè)置文本框的屬性為 readonly
"""
class my_info_form(forms.Form):
 user_id = forms.IntegerField(widget=forms.TextInput(attrs={'readonly': 'readonly'}))
 user_name = forms.CharField(widget=forms.TextInput(attrs={'readonly': 'readonly'}))
 email = forms.EmailField(widget=forms.TextInput(attrs={'readonly': 'readonly'}))

補(bǔ)充知識(shí):將input標(biāo)簽設(shè)置為不可編輯狀態(tài)的三種方法

一:disabled

disabled 屬性規(guī)定應(yīng)該禁用 input 元素,被禁用的 input 元素,不可編輯,不可復(fù)制,不可選擇,不能接收焦點(diǎn),后臺(tái)也不會(huì)接收到傳值。設(shè)置后文字的顏色會(huì)變成灰色。disabled 屬性無(wú)法與 <input type="hidden"> 一起使用。

示例:

<input type="text" disabled="disabled" />

二:readonly

readonly 屬性規(guī)定輸入字段為只讀可復(fù)制,但是,用戶可以使用Tab鍵切換到該字段,可選擇,可以接收焦點(diǎn),還可以選中或拷貝其文本。后臺(tái)會(huì)接收到傳值. readonly 屬性可以防止用戶對(duì)值進(jìn)行修改。readonly 屬性可與 <input type="text"> 或 <input type="password"> 配合使用。

示例:

<input type="text" readonly="readonly">

三:readonly unselectable="on"

readonly unselectable="on" 該屬性跟disable類似,input 元素,不可編輯,不可復(fù)制,不可選擇,不能接收焦點(diǎn),設(shè)置后文字的顏色也會(huì)變成灰色,但是后臺(tái)可以接收到傳值。

示例:

<input type="text" readonly unselectable="on" >

以上這篇Django Form設(shè)置文本框?yàn)閞eadonly操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實(shí)現(xiàn)網(wǎng)頁(yè)自動(dòng)簽到功能

    python實(shí)現(xiàn)網(wǎng)頁(yè)自動(dòng)簽到功能

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)網(wǎng)頁(yè)自動(dòng)簽到功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Python中shutil模塊的學(xué)習(xí)筆記教程

    Python中shutil模塊的學(xué)習(xí)筆記教程

    shutil模塊是一種高層次的文件操作工具,類似于高級(jí)API,主要強(qiáng)大之處在于其對(duì)文件的復(fù)制與刪除操作更是比較支持好。下面這篇文章主要介紹了Python中shutil模塊的相關(guān)教程,需要的朋友可以參考學(xué)習(xí),下面來(lái)一起看看吧。
    2017-04-04
  • python破解WiFi教程代碼,Python蹭網(wǎng)原理講解

    python破解WiFi教程代碼,Python蹭網(wǎng)原理講解

    用Python生成一個(gè)簡(jiǎn)單的密碼本,一般是有數(shù)字、字母和符號(hào)組成,這里用到的思路主要是窮舉法。通過(guò)使用pywifi?模塊,根據(jù)密碼本暴力破解WiFi。本文只是從技術(shù)的角度來(lái)闡述學(xué)習(xí)Pywifi庫(kù)!并不建議大家做任何破壞性的操作和任何不當(dāng)?shù)男袨椋?/div> 2023-01-01
  • Python動(dòng)態(tài)聲明變量賦值代碼實(shí)例

    Python動(dòng)態(tài)聲明變量賦值代碼實(shí)例

    這篇文章主要介紹了Python動(dòng)態(tài)聲明變量賦值代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 讓Python代碼運(yùn)行更快的9個(gè)小技巧

    讓Python代碼運(yùn)行更快的9個(gè)小技巧

    我們經(jīng)常聽(tīng)到 “Python 太慢了”,“Python 性能不行”這樣的觀點(diǎn),但是,只要掌握一些編程技巧,就能大幅提升 Python 的運(yùn)行速度,今天就讓我們一起來(lái)看下讓 Python 性能更高的 9 個(gè)小技巧,需要的朋友可以參考下
    2024-01-01
  • matplotlib實(shí)現(xiàn)矩陣和圖像的可視化表示

    matplotlib實(shí)現(xiàn)矩陣和圖像的可視化表示

    這篇文章主要為大家詳細(xì)介紹了如何利用matplotlib實(shí)現(xiàn)矩陣和圖像的可視化表示,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解下
    2024-03-03
  • Python實(shí)現(xiàn)語(yǔ)音合成功能詳解

    Python實(shí)現(xiàn)語(yǔ)音合成功能詳解

    這篇文章主要為大家介紹了一個(gè)通過(guò)Python制作的小工具,可以實(shí)現(xiàn)語(yǔ)音識(shí)別以及文字轉(zhuǎn)語(yǔ)音的功能,文中的實(shí)現(xiàn)步驟講解詳細(xì),感興趣的可以動(dòng)手試一試
    2022-01-01
  • Python編程實(shí)現(xiàn)的圖片識(shí)別功能示例

    Python編程實(shí)現(xiàn)的圖片識(shí)別功能示例

    這篇文章主要介紹了Python編程實(shí)現(xiàn)的圖片識(shí)別功能,涉及Python PIL模塊的安裝與使用技巧,需要的朋友可以參考下
    2017-08-08
  • Python?base64和hashlib模塊及用法詳解

    Python?base64和hashlib模塊及用法詳解

    這篇文章主要介紹了Python?base64和hashlib模塊,本文通過(guò)實(shí)例代碼介紹了base64和hashlib模塊的相關(guān)知識(shí),代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-02-02
  • python多重繼承新算法C3介紹

    python多重繼承新算法C3介紹

    這篇文章主要介紹了python多重繼承新算法C3介紹,多重繼承需要復(fù)雜的算法,本文就詳細(xì)講解了新算法C3,需要的朋友可以參考下
    2014-09-09

最新評(píng)論

乡城县| 闸北区| 双鸭山市| 辛集市| 洛浦县| 马龙县| 咸阳市| 麻江县| 新余市| 工布江达县| 丹寨县| 东城区| 措美县| 赣榆县| 全州县| 甘谷县| 吉林市| 罗甸县| 普兰县| 大理市| 乌鲁木齐市| 潼关县| 天柱县| 乌兰察布市| 邵东县| 蓬莱市| 弋阳县| 万安县| 望城县| 江津市| 宣恩县| 双流县| 淅川县| 高淳县| 柳林县| 葫芦岛市| 泰和县| 承德县| 安康市| 湘潭市| 巨野县|