テキストボックスとボタンがあり、ボタンをクリックすると、コントローラーからアクションを呼び出し、テキストボックスの値をパラメーターとして渡したいと思います。では、どうすればそれを行うことができますか?
質問する
143 次
2 に答える
0
これは、JavaScript を介して行う必要があります。その標準または jQuery の可能性が高いです。
SO には、このタイプの機能の例がたくさんあります。$ajax と mvc テキスト ボックスの値を検索してください。
例:
$(function () {
var txtBoxValue = $('#yourTextboxId').val();
$.ajax({
url: '@Url.Action("Youraction", "Yourcontroller")',
data: { id: txtBoxValue },
success: function(data) {
$('.result').html(data);
alert('Load was performed.');
}
});
});
[編集] - ユースケース (指定しない) に応じて、もちろんテキストボックスをフォームタグ内にラップし、「通常の」方法で送信するだけで、テキストボックスの「名前」と「値」をキャプチャできますアクションのフォームコレクション内。
于 2012-08-08T11:38:59.297 に答える
0
正確に何をしたいかによって異なりますが、通常の場合、ビューを (モデルに対して) 強く型付けし、ビューでフォームを使用することをお勧めします。これを行う方法を示す例を次に示します (ビューから AddPerson メソッドを呼び出します)。
ビュー「AddPerson」
@model MvcApplication.Models.Person
//You can pass in the actionName and the controllerName as parameters to the method BeginForm()
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<div class="editor-label">
@Html.LabelFor(model => model.FirstName)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.FirstName)
@Html.ValidationMessageFor(model => model.FirstName)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.LastName)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.LastName)
@Html.ValidationMessageFor(model => model.LastName)
</div>
<p>
<input type="submit" value="Create" />
</p>
}
"Person" コントローラーでのアクション
[HttpPost]
public ActionResult AddPerson(Person person)
{
// The code
return View("OperationEndWithSuccess");
}
于 2012-08-09T12:45:52.970 に答える