Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ViewBag作为数据源插件的Jquery TagIt问题_Jquery_Asp.net Mvc 3_Razor_Viewbag_Tag It - Fatal编程技术网

使用ViewBag作为数据源插件的Jquery TagIt问题

使用ViewBag作为数据源插件的Jquery TagIt问题,jquery,asp.net-mvc-3,razor,viewbag,tag-it,Jquery,Asp.net Mvc 3,Razor,Viewbag,Tag It,我想绑定数据以用ViewBag标记它,但不幸的是,它不起作用 这是我的控制器: public ActionResult ArticleEdit(Guid id) { ViewBag.Tags = db.Tags.Select(tag => tag.Name).ToList(); Article article = db.Articles.Single(a => a.ArticleID == id); return Vi

我想绑定数据以用ViewBag标记它,但不幸的是,它不起作用

这是我的控制器:

    public ActionResult ArticleEdit(Guid id)
    {
        ViewBag.Tags = db.Tags.Select(tag => tag.Name).ToList();

        Article article = db.Articles.Single(a => a.ArticleID == id);
        return View(article);
    }
我的看法是:

    <div class="tags">
        <label for="tags">
            Tags</label>
        <ul id="mytags">
        </ul>
    </div>
它呈现为:

$(document).ready(function () {
   $("#mytags").tagit({
   availableTags: ["boool! ","asd ","asdasdasd "]
   });
}); 
如果我使用
可用标签:[“c++”、“java”、“php”、“coldfusion”、“javascript”、“asp”、“ruby”、“python”、“c”、“scala”、“groovy”、“haskell”、“perl”]

它工作得非常好

我用ViewBag尝试了常规的jquery自动完成插件,效果很好。 下面是它的代码:

 <div class="ui-widget">
     <label for="tags">
         Tags:
     </label>
     <input id="tags" />
 </div>

 $(function() {
    var availableTags = @Html.Raw(Json.Encode(@ViewBag.Tags));
    $( "#tags" ).autocomplete({
    source: availableTags
    });
});

标签:
$(函数(){
var availableTags=@Html.Raw(Json.Encode(@ViewBag.Tags));
$(“#标记”).autocomplete({
资料来源:availableTags
});
});
你知道会是什么吗

我使用MVC3与剃须刀。当我使用
ViewBag
使用
availableTags
时,输入字段就消失了。

Hm,我改变了

$(document).ready(function () {
    $("#mytags").tagit({
        availableTags: @Html.Raw(Json.Encode(@ViewBag.Tags))
    });
});


它现在可以工作了

您可以再次检查呈现的HTML吗,因为它应该可以工作:。你在浏览器JS控制台中检查过了吗?有错误吗?我检查过两次,效果很好。我只有在visual studio中关闭了条件编译。不管怎样,它现在起作用了,谢谢你关注我的问题)嗨@makambi。无需将标题标记为[fixed]-只需勾选您的答案
:)
。嗨@halfer,
您可以在2天内接受您自己的答案
,现在最好将其标记为已解决)啊,我已经忘记了这一点。不用担心,过几天再来——我的观点是,为了保持一致性,最好不要使用自制标签。
$(document).ready(function () {
    $("#mytags").tagit({
        availableTags: @Html.Raw(Json.Encode(@ViewBag.Tags))
    });
});
    var myTags = @Html.Raw(Json.Encode(@ViewBag.Tags));

    $(document).ready(function () {
        $("#mytags").tagit({
            availableTags: myTags
        });
    });