嗨,我正在使用ASPTokenInput库,从以下网址查找
https://github.com/harindaka/ASPTokenInput/wiki
谁能帮我一个忙,如何在页面加载和部分回发时预填充一些令牌控件

最佳答案

不得不稍微调整一下代码,看来此功能尚未在原始代码中进行全面测试。我尝试仅将项目添加到“项目”中,并且它们在页面加载时显示出来,但是如果我添加新项目,则它们会立即消失,因为它们没有存储在隐藏字段中。

修改代码后,您可以执行以下操作,其中tiTest2是ASPTokenInput控件(对不起,没有tiTest2.Items.Add支持):

            List<ASPTokenInput.Item> items = new List<ASPTokenInput.Item>();
            items.Add(new ASPTokenInputLib.ASPTokenInput.Item() { id = "United States", name = "United States" });
            items.Add(new ASPTokenInputLib.ASPTokenInput.Item() { id = "Brazil", name = "Brazil" });


            tiTest2.Items = items;


您需要按以下方式更改代码:

   //Change the Items property to the following
   public List<Item> Items
    {
        get
        {
            this.EnsureChildControls();
            if (String.IsNullOrEmpty(_hfPersist.Value)) return new List<Item>();

            else return (List<Item>)new JavaScriptSerializer().Deserialize<IList<Item>>(_hfPersist.Value);
        }
        set
        {
            this.EnsureChildControls();
            _hfPersist.Value = new JavaScriptSerializer().Serialize(value);
        }
    }

  //Empty out "OnLoad", so it looks like this.  The functionality it was providing we don't need anymore
    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);

    }

关于jquery - 如何在ASPTokenInput上预填充一些标签,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9390416/

10-13 01:44