我想将数据从text field
传递到URL.action
。
我的ajax使用这个DIV
,只要按下DIV
内的按钮就刷新它。一切都很好。事情是我需要传递一些URL.action to controller
的参数。同一视图中textfields or dropboxes
中的参数。我怎么能这样做?
我的div:
<div id="mylist" data-source-url="@Url.Action("lentele", new { status = "good"})">
Dropbox我想从以下选项中获取所选值:
@Html.DropDownList("status", new SelectList(ViewBag.Status, "name", "name"), "Status", new { @class = "btn btn-default dropdown-toggle", style = "width:120px;" })
在示例中,如果我在参数中写status="good"
一切正常,我得到了我想要的东西。但是如何设置从DropDownList
获取状态?
data-source-url用作获取网址的属性:
<script>
function ajaxifyGridMvc(gridContainerSelector, successCallback) {
$(gridContainerSelector).on("click", ".grid-header a, .grid-pager li a",
function (event) {
var $grid_container = $(event.delegateTarget);
var baseUrl = $grid_container.attr("data-source-url");
var link = $(this).attr("href");
$.get(baseUrl + link, function (data) {
if (data.Status <= 0) {
alert(data.Message);
return;
}
$grid_container.html(data);
if ($.isFunction(successCallback))
successCallback();
});
return false;
});
}
</script>
答案:
将动态值传递给url.action是不可能的。 所以不得不管理其他方式,我发现我可以更改baseUrl并在那里设置参数。
看起来像:
$.get(baseUrl + link + "&slicplate="+ $("#slicplate").val()....
答案 0 :(得分:0)
您可以使用data
方法的$.get()
参数将参数传递给操作方法。例如,如果您需要将2个值传递给此方法
public ActionResult DoSomething(string Name, int Category) {...
你有以下html
<input type="text" id="Name" ... />
<select id="Category" ...>
<option value="1">Category 1</option>
<option value="2">Category 2</option>
...
</select>
并且您希望传递文本框和下拉列表的值,您可以使用
var url = '@UrlAction("DoSomething", "YourControllerName")';
var name = $('#Name').val();
var category = $('#Category').val();
$.get(url, { Name: name, Category: category }, function (data) {
// do something with the data returned by the action method