我正在使用带有不错标签输入的模板,但我现在希望能够根据特定条件计算单词数量并限制单词数量,但是,这是我唯一的方法。发现这样做是通过使用特定textboxfor的keyup,但要做到这一点,我需要引用JQuery,但然后它打破我的标签输入。以下是我目前的情况:
@Html.TextBoxFor(model => model.EmploymentSkills, new { @id = "tags", @class = "form-control tagsinput", @type = "text", @placeholder = "Add skill and press enter", data_role = "tagsinput" })
<script src="~/SmartAdmin/scripts/plugin/bootstrap-tags/bootstrap-tagsinput.min.js"></script>
有没有办法可以通过引用JQuery来实现这一点,或者能够引用它而不会破坏我的标签输入?
答案 0 :(得分:0)
是否存在具有data_role
属性的特定内容?只要我记得你应该把所有属性都放在@中,如果使用XPath。尝试将data_role = 'tagsinput'
替换为@data-role = 'tagsinput'
。也许这会导致这个问题。
答案 1 :(得分:0)
所以我找到了解决方法。如上所述,.keyup或.keydown没有用,所以我使用.change进行了升级。这是我使用的功能,也计算单词的数量并限制它们:
$(document).ready(function(){
$(".tagsinput").change(function (e) {
var value = $(this).val().replace(" ", "");
var words = value.split(",");
if (words.length > '@Model.TagsAllowed') {
alert("You are not allowed more than '@Model.TagsAllowed' tags!");
var lastword = value.split(",").pop();
value = value.replace(',' + lastword, '');
$(this).val(value);
$('.tagsinput').val() = value.substring(0, value.length - lastword.length);
}
});
})
希望这可以帮助其他任何地方的人。