ビューからコントローラーのメソッドを呼び出す必要があるコードのポイントに到達しました。
彼と一緒に、DropDownLists と TextBoxes からいくつかのパラメーターを送信する必要があります。
と を作成したく@using (Html.BeginForm...
ありません。その情報を収集してメソッドを実行する関数呼び出し<input>
を保持したいだけです。<button>
出来ますか?
私のDDLとテキストボックスの例:
@Html.DropDownListFor(cModel => cModel.QueueMonitorConfigTypeName, Enum.GetValues(typeof(BPM.Website.Models.PathType)).Cast<BPM.Website.Models.PathType>().Select(v => new SelectListItem
{
Text = v.ToString(),
Value = v.ToString()
}), new { id = "ddlConfigTypeName" })
@Html.TextBoxFor(cModel => cModel.Location, new { id = "txtbLocation" })
私のボタン:
<button id="btnAddUpdateConfig" name="btnAddUpdateConfig" value="Apply" onclick="ValidateValues()">Apply</button>
JS:
function ValidateValues()
{
$.ajax({
type: "POST",
url: "Storage/AddUpdateConfigs",
data: ({id: @Model.QueueMonitorConfigurationsID, PathType: $('#ddlConfigTypeName').val(), Threshold:$('#ddlThreshold').val(), ValueType:$('#ddlValueTypeName').val(), Location: $('#txtbLocation').val(), Limit: $('#txtbLimit').val(), config: $('#NewOrUpdate').val() }),
dataType: JSON
});
}
しかし、私の関数 AddUpdate Configs はトリガーされていません:
public ActionResult AddUpdateConfigs(int id, string configType, string location, string threshold, string valueType, int limit)
{
return PartialView();
}
戻りにブレークポイントを入れて到達しない