gpt4 book ai didi

javascript - 将 KENDO UI 自动完成条目作为 Controller 中的数组获取

转载 作者:行者123 更新时间:2023-12-02 18:30:27 25 4
gpt4 key购买 nike

我有一个 View cshtml 文件,其中使用 KENDO UI 自动完成小部件。我用它来获取一周中的几天,例如星期一、星期二等...

现在,在我的模型中,我有一个绑定(bind)到此控件的字符串数组。当我在自动完成文本框中输入多个值时,我希望将它们作为不同的数组条目填充到模型中,每个条目具有自动完成文本框中的一个值。 更清楚地说,假设我在文本框中输入 Monday, Tuesday,那么我期待一个由 2 个元素组成的数组,其中第一个元素的值为 Monday,第二个元素的值为 Tuesday。

我们怎样才能实现这一目标?现在我得到的数组只有一个元素:星期一,星期二。下面是模型和 View 的代码。

var daysofweek = [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday",
];
$("#daysofweek").kendoAutoComplete({
dataSource: daysofweek,

placeholder: "Select days of week...",
separator: ", "
});
<label for="daysofweek">Select Days of Week</label>
<input type="text" id="daysofweek" name="DaysofWeek" /><br />

型号代码

public class Holiday
{
public string Name { get; set; }
public string Description { get; set; }
public DateTime Date { get; set; }
public short Type { get; set; }
public bool AllYears { get; set; }
public string[] Days { get; set; }
public string[] DaysofWeek { get; set; }
public string[] Months { get; set; }
}

最佳答案

实现此目的的一种方法是使用

 public string DaysofWeek { get; set; }

从客户端接收逗号分隔的值,然后在服务器上根据 , 拆分值,例如

DaysOfWeekArray = DaysofWeek.split(',');

更新:

另一种有点难看的方法是 Hook 提交事件并在发布之前对表单元素进行一些更改

$('form').submit(function () {
var val = $('input[name="DaysofWeek"]', this).val(); // getting comma seperated values
var valArray = val.split(','); // creating array
for (var i = 0; i < valArray.length; i++) {
// creating dynamic elements with names[i] and value[i]
$('input').attr('name', 'DaysofWeek[' + i + ']').val(valArray[i]).appendTo(this);
}
//removing original element
$('input[name="DaysofWeek"]', this).remove();
});

关于javascript - 将 KENDO UI 自动完成条目作为 Controller 中的数组获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17851113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com