2017-09-04 34 views
0

我使用的模板附带了一个很好的标记输入,但我现在想要能够计算单词的数量并根据特定条件限制单词的数量,但是,唯一的我发现这样做的方式是使用特定文本框的键入,但要做到这一点,我需要引用JQuery,但它会打破我的标签输入。下面是我目前有:添加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

所以我找到了解决办法。如上所述,.keyup或.keydown不起作用,所以我使用.change登陆。这是我使用的功能,还指望单词的数量并限制他们。

$(文件)。就绪(函数(){

$(".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); 
     } 
    }); 
}) 

希望这有助于任何其他地方沿线

0

是否有与data_role属性有关的具体内容?只要我记得你应该把所有的属性放在@如果使用XPath。尝试将data_role = 'tagsinput'替换为@data-role = 'tagsinput'。也许这是造成这个问题。

+0

给它一个去,但仍然有问题。只是为了确认,标签的工作,但是当我添加一个JQuery文件的引用,然后标签破坏(即它现在显示为C#,SQL,MVC而不是标签) – AxleWack

+0

您可以发布代码引用jQuery吗? –

+0

问题出在哪里。这个视图不是引用jQuery。当我做,我的标签打破。我想添加引用,以便我可以使用keyup函数 - 但是,除了引用之外,keyup函数不起作用。我错过了这一点吗? – AxleWack