2017-09-01 118 views
1

我有以下問題。 例如,我有2個輸入字段,當字段A的值爲「項目完成」時,我想強制字段B必須填寫一定的值,比如說「Arjan」CakePHP 3.5.1驗證

有沒有人有我的解決方案如何做到這一點。

對不起,我可憐的英語,但在此先感謝。

回答

0

看起來這應該在JavaScript(或jQuery)中完成,因爲字段A由用戶動態更改。一個簡單的邏輯或許是:

$("#field_a").on("change", function(){ 
     var field_a = $("#field_a").val(); 
     //if true 
     if(field_a == "done"){ 
     //preferrably, this value should be coming from an associative array. 
     $("#field_b").val("Arjan"); 
     } 
    }); 
1

您可以創建一個custom validation rule

$validator->add('fieldB', 'custom', [ 
    'rule' => function ($value, $context) { 
     if ($context['data']['fieldA'] == "Project done") { 
      return $value == "Arjan" 
     } 
     return true; 
    }, 
    'message' => 'Error message' 
]); 

注意的$context格式可能會有點不同