0

フォーム上で、3 つのテキスト ボックスを使用して 1 つのモデル プロパティ (電話番号) を表現したいと考えています。電話番号は、「614-555-4321」のような文字列として保存されます。誰かが入力している電話番号の 3 つの部分をそれぞれ保持する 3 つのテキスト ボックスが必要です。これを達成するための最も簡単な/最良の方法は何ですか?

今、私は -@Html.TextBoxFor(m => m.ContactInfo.Phone)

フォームを送信するときに、3 つのテキスト ボックスに分割しContactInfo.Phone、電話番号の 3 つの部分の間に「-」を付けてプロパティにマップし直すにはどうすればよいですか?

4

1 に答える 1

1

1 つの方法は、ビューモデルで 3 つの入力プロパティを使用し、結合して電話番号を取得することです。

public string Area { get; set; }
public string Prefix { get; set; }
public string Suffix { get; set; }

public string Phone 
{
    get { return string.Format("({0}) {1}-{2}", Area, Prefix, Suffix); }
}

と:

(@Html.TextBoxFor(model => model.Area)) @Html.TextBoxFor(model => model.Prefix)-@Html.TextBoxFor(model => model.Suffix)
于 2013-09-17T04:34:24.390 に答える