У меня это form-
@using (Html.BeginForm("SaveVideo", "Upload", FormMethod.Post, new { id = "form-upload", @Class = "form-horizontal", enctype = "multipart/form-data", onsubmit = "return tags()", genres = "return genres()" }))
{
}
где в форме submit мне нужно будет отправлять строки, разделенные запятой.
<script type="text/javascript">
function genres() {
var genres = $('#input-genreautocomplete').val();
return genres;
}
function tags() {
var tags = $('#input-tagautocomplete').val();
return tags;
</script>
Теперь в качестве примера жанр будет like- 23,15,16,22,11
так же, как и теги. Он возвращает мне строку, разделенную запятой.
Теперь я хочу использовать эти строки в моем методе SaveVideo
. Но я не могу заставить эти строки работать как параметры. Как отправить эти строки методу?
Автозаполнения, работающие как this-
<script type="text/javascript">
$(function () {
$('#input-tagautocomplete').tagsinput({
itemValue: 'Id',
itemText: 'TagName',
typeahead: {
source: function (term, process) {
items = [];
map = {};
idofitem = [];
var url = "@Url.Content("~/Upload/GetTagNames/")";
return $.getJSON(url, { term: term }, function (data) {
$.each(data, function (i, item) {
map[item] = item;
items.push(item.TagName);
});
return (items);
});
},
updater: function (item) {
var selected = map[item].Id;
$('#tag-value').val(selected);
return item;
}
}
});
});
</script>
Где программа обновления не работает, хотя это расширение типа bootstrap.
Я думаю, вы немного смущены. Параметры действия не обязательно должны указываться в помощнике BeginForm()
. На самом деле, я не думаю, что это имеет смысл. Во-первых, эти данные должны быть в вашей форме, если они еще не были:
@using (Html.BeginForm("SaveVideo", "Upload", FormMethod.Post, new { id = "form-upload", @Class = "form-horizontal", enctype = "multipart/form-data"}))
{
<input type="text" id="input-tagautocomplete" name="tags" />
<input type="text" id="input-genreautocomplete" name="genres" />
}
Вы также можете создать их с помощью HTML-помощника. Важно то, что они имеют значение, указанное для атрибута name
.
Затем вы можете просто добавить параметры к вашему методу действий для соответствия этим именам:
public ActionResult SaveVideo(string tags, string genres)
{
// do whatever you want with tags and genres
}