2017-08-29 24 views
0

我正在接受卡號的用戶輸入,並希望用戶輸入的長度不能少於12多。以下是我的文本字段的聲明。將長度限制在TextField中作爲響應js

<TextField 
    id="SigninTextfield" 
    label="Aadhaar number" 
    id="Aadhar" 
    lineDirection="center" 
    required={true} 
    type="number" 
    maxLength={12} 
    style={styles.rootstyle} 
    erorText="Please enter only 12 digits number" 
/> 

現在我不理解是否使用javascript或任何事件處理程序來限制長度。

+2

從你在哪裏反應-MD使用TextField Compoennt –

+0

@ShubhamKhatri/lib目錄 –

+0

我看不到任何MaxLength屬性http://www.material-ui.com/#/components/text-字段 – Alexis

回答

1

我發現了另一個解決方案here

<TextField 
    required 
    id="required" 
    label="Required" 
    defaultValue="Hello World" 
    onInput = {(e) =>{ 
     e.target.value = Math.max(0, parseInt(e.target.value)).toString().slice(0,12) 
    }}/> 
1

材料設計<TextField />組件沒有任何length屬性。

你可以在onChange()方法中創建你的。

updateTextField(event,value){ 
    if(value.length <= 12){ 
    //Update your state 
    } 
    else{ 
    //Value length is biggest than 12 
    } 
} 

<TextField 
    id="SigninTextfield" 
    label="Aadhaar number" 
    id="Aadhar" 
    lineDirection="center" 
    required={true} 
    type="number" 
    onChange={(e,v) => this.updateTextField(e,v)} 
    style={styles.rootstyle} 
    erorText="Please enter only 12 digits number" 
/> 
0

您可以設置maxLength屬性來限制文本框中的文本。

相反onChange方法,你可以通過maxLengthmaterial-uiTextFieldinputProps道具。

<TextField 
    required 
    id="required" 
    label="Required" 
    defaultValue="Hello World" 
    inputProps={{ maxLength: 12 }} 
/>