コード:
<template> <div> <el-button type = " primary " @ click = " dialogFormVisible = true " >打开嵌套表单的ダイアログ</ el-button> <el-dialog title = " 受け取り货地址":visible。 sync = " dialogFormVisible " > <el-form ref = " form ":model = " form ":rules = " rules ":before-close = " closeDiv " > <el-form-item label = " 姓名"prop = " 名前" > <el-input v-model = " form.Name " placeholder = " 実名を入力してください" /> </ el-form-item> <el-form-item label = " 携帯電話番号" prop = " モバイル" > <el-input v-model = " form.Mobile " placeholder = " 携帯電話番号を入力してください" maxlength = " 11 " /> </ el-form-item> <el-form-item label = " ID番号" prop =" idCardNo " > <el-input v-model = " form.idCardNo " placeholder = " ID番号を入力してください" maxlength = " 20 " /> </ el-form-item> <el-form-item label = " アドレス"プロップ= " アドレス" > <入力V-モデルIL-= " form.address "タイプ= " TextAreaの"プレースホルダ= " アドレスを入力して" > </ EL-INPUT> </ el-form-item> </ el-form> <div slot = " footer " class = " dialog-footer " > <el-button @ click = " cancel " > 取消 </ el-button> <el-button type = " primary " @ click = " Submit " >提交</ el-button> </ div> </ el-dialog> </ div> </ template> <script> デフォルトの エクスポート{ data(){ return { dialogFormVisible:false 、 form:{}、// フォーム検証 //形成正規チェックパターンを確認することができる ルール:{ 名:[ {必須:trueに、パターン:/ ^ [\ u4e00- \ -ZA-u9fa5a Z]を{ 1、20、} $ /メッセージ:" を入力してください英語名"、トリガー:" blur " } ]、 アドレス:[ {required:true、message:" Please enter the detail address "、trigger:" blur " } ]、 Mobile:[ { required:true 、 pattern:/ ^ 1 [ 3 | 4 | 5 | 6 | 7 | 8 | 9 ] [ 0 - 9。 ] \ D { 8。 $ /} 、 メッセージ:" 有効な電話番号を入力してください" 、 トリガー:" ぼかし" } ]、 idCardNo:[ { 必須:true 、 パターン: / ^ \ d { 6 }(18 | 19 | 20)?\ d {2 }(0 [ 1 - 9 ] | 1 [ 012 ])(0 [ 1 - 9 ] | [ 12は \ D] | 。3 [ 01 ])\ D { 3 }(\ D | [XX])$ / 、 メッセージ:「正しいフォーマットID番号を入力してください」、 トリガー:「ぼかし」 } ]、 }、 } }、 メソッド:{ // クリックして送信 送信(){ this。$ refs [ ' form ' ] .validate(valid => { if(valid){ // バックグラウンドインターフェースをリクエストすることは、// バックグラウンドインターフェースをリクエストすることで操作を検証することを意味し ます // リクエストが成功し たら、入力ボックスのコンテンツをクリアしますthis。 > { // フォームは<el-form ref = "form"> </ el-form> thisに対応します。$ refs [ " form " ] .resetFields(); }); } }) }、 キャンセル() { この .dialogFormVisibleは= falseを // 明確な検証に入力ボックスの内容を消去する場合[キャンセル]ボタンをクリックします // この後の動作。$ nextTickはノード取得し 、これを。$ nextTick(()=> { // フォームは、作成した<el-form ref = "form"> </ el-form>に対応 します。。 $ refs [ " form " ] .resetFields(); }); } 、 // 右上隅×キャンセルボタン closeDiv(){ this。$ NextTick(()=> { // フォームは記述された<el-form ref = "form"> </ el-form> thisに対応します。$ Refs [ " form " ] .resetFields(); }); } } } </ script>
エラーまたは改善がある場合は、修正を指摘してください