我的URL localhost:555/Configuration/Addresses
上找不到服務器操作由於錯誤的URL
我有3個按鈕編輯/創建/刪除表格。
當我按下其中一個按鈕時,根據按鈕的值屬性動態設置表單動作。我稍後使用本地化的按鈕。
當我點擊一個按鈕,檢查瀏覽器的源代碼,我得到這個網址:
「配置/地址/編輯」,並提交表單。
爲什麼我那麼在url中看到這一點: 'Configuration/Configuration/Addresses/Edit'
因此對服務器的編輯操作沒有發現:/
<div class="row">
<div class="col-xs-12">
@using (Html.BeginForm())
{
<div class="form-group required">
@Html.LabelFor(m => m.Title, HtmlAttributes.Label)
<div class="col-md-6">
@(Html.Kendo().DropDownListFor(m => m.Title)
.BindTo(Model.Addresses.OrderBy(order => order.Text))
.HtmlAttributes(HtmlAttributes.KendoControl))
</div>
</div>
<button type="submit" class="btn btn-default addresses-btn" name="action" value="Delete">Delete</button>
<button type="submit" class="btn btn-default addresses-btn" name="action" value="Edit">Edit</button>
<button type="submit" class="btn btn-default addresses-btn" name="action" value="Add">Create</button>
}
</div>
</div>
<script>
$(function() {
$(".btn-default").on("click", function (e) {
e.preventDefault();
var form = $(this).closest("form");
var action = $(this).val();
$(form).attr('action', '@MVC.Configuration.Name' + '/' + '@MVC.Configuration.Addresses.Name' + "/" + action);
$(form).submit();
});
});
</script>
因爲你需要一個正斜槓'$(形式).attr( '動作', '/' +「@ MVC.Configuration.Name'....' – 2015-02-24 08:45:09
有相對和絕對url's.在你的情況下,網址是相對的,你不需要'@ MVC.Configuration.Name'+'/'+部分(你已經在地址控制器中)如果你在開始時添加'〜',你會得到一個絕對的url – okisinch 2015-02-24 08:51:41
@ Url.Content(「〜」)+「\」+ action does not work then I get add or edit in the url – Pascal 2015-02-24 09:07:49