Я использую tagsManager плагина http://welldonethings.com/tags/manager/v3, чтобы добавить некоторые тегов вид внутри Бритва и я пропускание ИНТА [] от контроллера для просмотра с помощью ViewBag Javascript кода какПроверить значение существует в массиве внутри метода валидатора tagsManager
$(document).ready(function() {
$(".tm-input").tagsManager({
delimiters: [9, 44], // tab, comma . Can add Enter by adding 13 to this list , but form Post will occur
hiddenTagListName: 'Students', //Use the property of the model as Hidden field to get the values at post
hiddenTagListId: 'Students',
validator: function (value) {
// var items = @Html.Raw(Json.Encode(ViewBag.RollNos));
var items = [ @(string.Join(", ", (int[])ViewBag.RollNos)) ];
console.log(items);
console.log(value);
var res=items.indexOf(value);
console.log(res);
var res=$.inArray(value, items);
console.log("**"+res);
if(items.indexOf(value) >-1)
{
return true;
}
else{
alert("Invalid roll NO");
return false;
}
}
});
});
в консоли, что я могу увидеть
[1, 3, 6, 7, 5, 2, 4]
1
-1
**-1
т.е. я получаю как элемент 1 не существует в массиве [используя как JQuery djavascript методы] Любое понимание этой ошибки?
Что такое значение ' value'? Кроме того, 'indexOf' не поддерживается во всех браузерах. Как вы отметили jQuery, вы можете попробовать '$ .inArray (items, value)' –
Я попробовал Jquery также var res = $. InArray (value.trim(), items); console.log ("**" + res); Но получение -1. Также значение параметра значения получается как 1 –