0

次のように、JavaScriptを介してフォームにテキストボックスを追加しました

<input type="text" name="odd" id="odd" />

モデルにパラメータを追加しました

public string odd {get; set;}

ここで、変数oddを呼び出してコントローラーのこのテキストボックスのテキストを取得したいのですが、常に空です。同じ名前を付ける以外に、これら 2 つを結び付けるために必要なことはありますか?

編集

私のフォームは次のようになります

using (Html.BeginForm("ControllerName", "Home", FormMethod.Get, new { enctype ="multipart/form-data" })){
  <div> @Html.DropDownListFor(m => m.model1.mode,
                        new SelectList(Model.model1.mylist, "Value", "Text"), "Select", new { @onchange="javascriptFxn(this.options[this.selectedIndex].text);"})
                    <div id="Other"></div>
 }

そしてJavaScriptは次のようになります

javascriptFxn(name){
  document.getElementById('Other').innerHTML = '<br /> <input type="text" name="odd">';
 }

私のモデル1は次のようになります

public class model1{
  public string odd {get; set;}
 }

およびコントローラーの送信

  public ActionResult Submit(MyModel model)
   {
      string s = model.model1.odd;
   }
4

1 に答える 1

0

提供されたコードの部分から、(ビューに渡される)モデルにはOddプロパティがないように見えますが、代わりにモデルにはOddプロパティを持つModel1プロパティがあります。モデルに直接Oddプロパティを設定して、フォームの送信時に値が投稿されるかどうかを確認してください。

于 2012-12-27T14:21:51.220 に答える