Как следует из названия, я пытаюсь добавить текстовое поле построчно в параметр в моем методе действия.
Это моя функция JQuery:
$("#number").on("click", function () {
var numbers = $("#numbertextarea")[0].value
window.location.href = ('/model/AddNumber?number=' + number)
});
Мой метод действий:
public ActionResult AddNumber(string[] numbers)`
{
//a lot of code...
}
Когда я нажимаю кнопку, все отображается в одной строке, например:
ghjgghjgjgjgjgj
Вместо того, чтобы брать каждую строку строки из textarea в массив, например:
ghj
ggh
jgjgjgjgjgj
Я пробовал использовать это:
<span style = "white-space: pre-line">@Model.InputNumber</span>
И это:
var lines = Request["InputNumber"].Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
Ни одно из вышеперечисленных решений не работает. Первое решение просто отображает строку таким же образом в одной строке - dadaggfhge. Другое Решение возвращает значение null, потому что на момент щелчка по этому методу действия модель является новой, а свойства do имеют значение null, как и должно быть.
Любая помощь будет оценена, спасибо.





Разделите значение textarea на новую строку, чтобы получить значения в виде массива.
Имя параметра в URL-адресе '/model/AddNumber?number=' не соответствует имени параметра действия, которое является numbers (обратите внимание, что отсутствует s)
$("#number").on("click", function () {
var numbers = $("#numbertextarea").val().split(/\n/);
window.location.href = ('/model/AddNumber?numbers=' + numbers)
});
Привет, спасибо, что сделали это. вернул строку в следующем формате: aweaw, weae, werr. просто нужно использовать теперь регулярное выражение, чтобы разделить его, и все должно быть в порядке! :)