mvc4アプリケーションで登録フォームを作成したいと思います。したがって、ユーザーが登録するときに、その時点でユーザーのステータス(プログラマーかどうか)を定義し、ユーザーの選択に応じて入力する追加のフィールドを動的に表示(または非表示)したいと思います。
デフォルトの場合、ユーザーがプログラマーでない場合(チェックボックスフィールドのチェックを外すことにより)、すべてのフィールドは言語、サイト、および保護観察のフィールドを非表示にするように見えます。私のレジスターモデルは次のようなものです。
public class RegisterModel
{
[Required]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[StringLength(100, ErrorMessage = "*", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "*")]
public string ConfirmPassword { get; set; }
[Display(Name = "Profession")]
public bool IsProgrammer { get; set; }
[Required]
[Display(Name = "Language")]
public string Language { get; set; }
[Required]
[Display(Name = "Site")]
public string Site { get; set; }
[Required]
[Display(Name = "Probation")]
public string Probation { get; set; }
}
ユーザーがプログラマーの場合、言語、サイト、保護観察の各フィールドが必要です。ユーザーはそれらに入力する必要があります。
ユーザーがプログラマーでない場合、言語、サイト、保護観察の各フィールドは不要で、登録できる登録モデルを作成するにはどうすればよいですか?
私の2番目の質問は、チェックボックスがオン(オフ)の場合、フィールドを動的に表示(非表示)する方法です。