コード例 #1
0
        public void HtmlAttribute_SetsCssClassAttribute()
        {
            actual     = string.Empty;
            returnHtml = string.Empty;
            AutoCompleteOption target   = new AutoCompleteOption();
            string             expected = target.CssClass = "Sample";

            returnHtml = Utility.ControlOptionHtmlBuilder <AutoCompleteOption>(target, _startTag);
            actual     = Utility.GetAttribute(returnHtml, "class", _startTag);
            Assert.AreEqual(expected, actual);
        }
コード例 #2
0
        public void HtmlAttribute_SetsAutoFocusAttribute()
        {
            actual     = string.Empty;
            returnHtml = string.Empty;
            AutoCompleteOption target = new AutoCompleteOption();

            target.AutoFocus = true;
            string expected = "{\"autoFocus\":true}";

            returnHtml = Utility.ControlOptionHtmlBuilder <AutoCompleteOption>(target, _startTag);
            actual     = Utility.GetAttribute(returnHtml, "data-control-options", _startTag);
            Assert.AreEqual(expected, actual);
        }
コード例 #3
0
        public void HtmlAttribute_SetsAppendToAttribute()
        {
            actual     = string.Empty;
            returnHtml = string.Empty;
            AutoCompleteOption target = new AutoCompleteOption();

            target.AppendTo = "#div";
            string expected = "{\"appendTo\":\"#div\"}";

            returnHtml = Utility.ControlOptionHtmlBuilder <AutoCompleteOption>(target, _startTag);
            actual     = Utility.GetAttribute(returnHtml, "data-control-options", _startTag);
            Assert.AreEqual(expected, actual);
        }
コード例 #4
0
        public void HtmlAttribute_SetsCustomHtmlAttribute()
        {
            actual     = string.Empty;
            returnHtml = string.Empty;
            AutoCompleteOption target = new AutoCompleteOption();

            target.HtmlAttributeList = new RouteValueDictionary(new { CustomAttribute = "Sample" });
            string expected = "Sample";

            returnHtml = Utility.ControlOptionHtmlBuilder <AutoCompleteOption>(target, _startTag);
            actual     = Utility.GetAttribute(returnHtml, "CustomAttribute", _startTag);
            Assert.AreEqual(expected, actual);
        }
コード例 #5
0
        public void HtmlAttribute_SetsPositionAttribute()
        {
            actual     = string.Empty;
            returnHtml = string.Empty;
            AutoCompleteOption target = new AutoCompleteOption();

            target.Position = new AutoCompletePosition("right top", "right bottom");
            string expected = "{\"position\":{\"my\":\"right top\",\"at\":\"right bottom\"}}";

            returnHtml = Utility.ControlOptionHtmlBuilder <AutoCompleteOption>(target, _startTag);
            actual     = Utility.GetAttribute(returnHtml, "data-control-options", _startTag);
            Assert.AreEqual(expected, actual);
        }
コード例 #6
0
        public void HtmlAttribute_SetsMinimumLengthAttribute()
        {
            actual     = string.Empty;
            returnHtml = string.Empty;
            AutoCompleteOption target = new AutoCompleteOption();

            target.MinimumLength = 2;
            string expected = "{\"minLength\":2}";

            returnHtml = Utility.ControlOptionHtmlBuilder <AutoCompleteOption>(target, _startTag);
            actual     = Utility.GetAttribute(returnHtml, "data-control-options", _startTag);
            Assert.AreEqual(expected, actual);
        }
コード例 #7
0
        public void HtmlAttribute_SetsDelayAttribute()
        {
            actual     = string.Empty;
            returnHtml = string.Empty;
            AutoCompleteOption target = new AutoCompleteOption();

            target.Delay = 1000;
            string expected = "{\"delay\":1000}";

            returnHtml = Utility.ControlOptionHtmlBuilder <AutoCompleteOption>(target, _startTag);
            actual     = Utility.GetAttribute(returnHtml, "data-control-options", _startTag);
            Assert.AreEqual(expected, actual);
        }
コード例 #8
0
        /// <summary>
        /// auto complete for an input
        /// </summary>
        /// <param name="html"></param>
        /// <param name="HtmlID"></param>
        /// <param name="option"></param>
        /// <returns></returns>
        public static String AutoCompleteFor(this HtmlHelper html, String HtmlID, AutoCompleteOption option)
        {
            var jsOption = option.ToJSON();

            var js  = String.Format(@"$(""#{0}"").autocomplete(""{1}"", {2});", HtmlID, option.URL, jsOption);
            var js1 = "";

            if (option.Result != null)
            {
                js1 = String.Format(@"$(""#{0}"").result(function(event, data, formatted) {{ var info; eval(""info = ""+formatted);{1}}} );", HtmlID, option.Result);
            }
            else if (option.ResultFunc != null)
            {
                js1 = String.Format(@"$(""#{0}"").result({1});", HtmlID, option.ResultFunc);
            }

            return(Javascript.AddToJavascriptTag(js + js1));
        }
コード例 #9
0
 /// <summary>
 /// Sets this text box up for AJAX auto-complete.
 /// </summary>
 public void SetupAutoComplete( ResourceInfo service, AutoCompleteOption option )
 {
     autoCompleteService = service;
     autoCompleteOption = option;
 }
コード例 #10
0
 /// <summary>
 /// Sets this text box up for AJAX auto-complete.
 /// </summary>
 public void SetupAutoComplete(ResourceInfo service, AutoCompleteOption option)
 {
     autoCompleteService = service;
     autoCompleteOption  = option;
 }