mirror of
https://github.com/dotnetcore/BootstrapBlazor.git
synced 2025-12-20 10:26:41 +08:00
!1611 fix(#I417RK): resolve throw exception when set ShowSearch to true on Select
* fix: 修复 Select 组件设置 ShowSearch 时回车提交报错问题
This commit is contained in:
@@ -11,8 +11,8 @@
|
||||
|
||||
$el.on('keyup', function (e) {
|
||||
var $this = $(this);
|
||||
if ($this.hasClass('show')) {
|
||||
var $items = $this.find('.dropdown-menu.show > .dropdown-item').not('.is-disabled');
|
||||
if ($this.find('.dropdown-toggle').hasClass('show')) {
|
||||
var $items = $this.find('.dropdown-menu.show > .dropdown-item').not('.is-disabled, .search');
|
||||
|
||||
var $activeItem = $items.filter(function (index, ele) {
|
||||
return $(ele).hasClass('active');
|
||||
@@ -21,7 +21,7 @@
|
||||
if ($items.length > 1) {
|
||||
if (e.key === "ArrowUp") {
|
||||
$activeItem.removeClass('active');
|
||||
var $prev = $activeItem.prev().not('.is-disabled');
|
||||
var $prev = $activeItem.prev().not('.is-disabled, .search');
|
||||
if ($prev.length === 0) {
|
||||
$prev = $items.last();
|
||||
}
|
||||
@@ -29,7 +29,7 @@
|
||||
}
|
||||
else if (e.key === "ArrowDown") {
|
||||
$activeItem.removeClass('active');
|
||||
var $next = $activeItem.next().not('.is-disabled');
|
||||
var $next = $activeItem.next().not('.is-disabled, .search');
|
||||
if ($next.length === 0) {
|
||||
$next = $items.first();
|
||||
}
|
||||
@@ -38,8 +38,12 @@
|
||||
}
|
||||
|
||||
if (e.key === "Enter") {
|
||||
$this.removeClass('show').find('.show').removeClass('show');
|
||||
obj.invokeMethodAsync(method, $activeItem.index());
|
||||
$this.find('.show').removeClass('show');
|
||||
var index = $activeItem.index();
|
||||
if ($this.find('.search').length > 0) {
|
||||
index--;
|
||||
}
|
||||
obj.invokeMethodAsync(method, index);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1 +1 @@
|
||||
(function(n){n.extend({bb_select:function(t,i,r){var u=n(t),f=u.find("input.search-text");u.on("shown.bs.dropdown",function(){f.length>0&&f.focus()});u.on("keyup",function(t){var s=n(this),f,u,e,o;s.hasClass("show")&&(f=s.find(".dropdown-menu.show > .dropdown-item").not(".is-disabled"),u=f.filter(function(t,i){return n(i).hasClass("active")}),f.length>1&&(t.key==="ArrowUp"?(u.removeClass("active"),e=u.prev().not(".is-disabled"),e.length===0&&(e=f.last()),e.addClass("active")):t.key==="ArrowDown"&&(u.removeClass("active"),o=u.next().not(".is-disabled"),o.length===0&&(o=f.first()),o.addClass("active"))),t.key==="Enter"&&(s.removeClass("show").find(".show").removeClass("show"),i.invokeMethodAsync(r,u.index())))});u.on("click",".dropdown-item.is-disabled",function(n){n.stopImmediatePropagation()})}})})(jQuery);
|
||||
(function(n){n.extend({bb_select:function(t,i,r){var u=n(t),f=u.find("input.search-text");u.on("shown.bs.dropdown",function(){f.length>0&&f.focus()});u.on("keyup",function(t){var e=n(this),f,u,o,s,h;e.find(".dropdown-toggle").hasClass("show")&&(f=e.find(".dropdown-menu.show > .dropdown-item").not(".is-disabled, .search"),u=f.filter(function(t,i){return n(i).hasClass("active")}),f.length>1&&(t.key==="ArrowUp"?(u.removeClass("active"),o=u.prev().not(".is-disabled, .search"),o.length===0&&(o=f.last()),o.addClass("active")):t.key==="ArrowDown"&&(u.removeClass("active"),s=u.next().not(".is-disabled, .search"),s.length===0&&(s=f.first()),s.addClass("active"))),t.key==="Enter"&&(e.find(".show").removeClass("show"),h=u.index(),e.find(".search").length>0&&h--,i.invokeMethodAsync(r,h)))});u.on("click",".dropdown-item.is-disabled",function(n){n.stopImmediatePropagation()})}})})(jQuery);
|
||||
@@ -66,7 +66,7 @@ x();"bottom"===a.start?(c.css({top:b.outerHeight()-c.outerHeight()}),n(0,!0)):"t
|
||||
(function(n){n.extend({bb_rate:function(t,i,r){var u=n(t),f;u.val=parseInt(u.attr("aria-valuenow"));f=function(){var t=u.find(".rate-item");t.each(function(t){t>u.val?n(this).removeClass("is-on"):n(this).addClass("is-on")})};u.on("mouseenter",".rate-item",function(){if(!u.hasClass("disabled")){var t=u.find(".rate-item"),i=t.toArray().indexOf(this);t.each(function(t){t>i?n(this).removeClass("is-on"):n(this).addClass("is-on")})}});u.on("mouseleave",function(){u.hasClass("disabled")||f()});u.on("click",".rate-item",function(){if(!u.hasClass("disabled")){var n=u.find(".rate-item");u.val=n.toArray().indexOf(this);u.attr("aria-valuenow",u.val+1);i.invokeMethodAsync(r,u.val+1)}})}})})(jQuery);
|
||||
(function(n){n.extend({bb_row:function(t){var i=n(t);i.grid()}})})(jQuery);
|
||||
(function(n){n.extend({bb_scroll:function(t,i){var r=n(t),o=n(window).width()<768||navigator.userAgent.match(/Macintosh/);if(i||!o){var s=r.attr("data-hide"),u=r.attr("data-height"),e=r.attr("data-width"),f={alwaysVisible:s!=="true"};u||(u="auto");u!==""&&(f.height=u);e||(f.width=e);r.slimScroll(f)}else r.addClass("is-phone")}})})(jQuery);
|
||||
(function(n){n.extend({bb_select:function(t,i,r){var u=n(t),f=u.find("input.search-text");u.on("shown.bs.dropdown",function(){f.length>0&&f.focus()});u.on("keyup",function(t){var s=n(this),f,u,e,o;s.hasClass("show")&&(f=s.find(".dropdown-menu.show > .dropdown-item").not(".is-disabled"),u=f.filter(function(t,i){return n(i).hasClass("active")}),f.length>1&&(t.key==="ArrowUp"?(u.removeClass("active"),e=u.prev().not(".is-disabled"),e.length===0&&(e=f.last()),e.addClass("active")):t.key==="ArrowDown"&&(u.removeClass("active"),o=u.next().not(".is-disabled"),o.length===0&&(o=f.first()),o.addClass("active"))),t.key==="Enter"&&(s.removeClass("show").find(".show").removeClass("show"),i.invokeMethodAsync(r,u.index())))});u.on("click",".dropdown-item.is-disabled",function(n){n.stopImmediatePropagation()})}})})(jQuery);
|
||||
(function(n){n.extend({bb_select:function(t,i,r){var u=n(t),f=u.find("input.search-text");u.on("shown.bs.dropdown",function(){f.length>0&&f.focus()});u.on("keyup",function(t){var e=n(this),f,u,o,s,h;e.find(".dropdown-toggle").hasClass("show")&&(f=e.find(".dropdown-menu.show > .dropdown-item").not(".is-disabled, .search"),u=f.filter(function(t,i){return n(i).hasClass("active")}),f.length>1&&(t.key==="ArrowUp"?(u.removeClass("active"),o=u.prev().not(".is-disabled, .search"),o.length===0&&(o=f.last()),o.addClass("active")):t.key==="ArrowDown"&&(u.removeClass("active"),s=u.next().not(".is-disabled, .search"),s.length===0&&(s=f.first()),s.addClass("active"))),t.key==="Enter"&&(e.find(".show").removeClass("show"),h=u.index(),e.find(".search").length>0&&h--,i.invokeMethodAsync(r,h)))});u.on("click",".dropdown-item.is-disabled",function(n){n.stopImmediatePropagation()})}})})(jQuery);
|
||||
(function(n){n.extend({bb_multi_select:function(t,i,r){n(t).data("bb_multi_select",{obj:i,method:r})}});n(function(){n(document).on("click",function(t){var r=n(t.target),i=r.closest(".multi-select");n(".multi-select.show").each(function(){if(i.length===0||this!=i[0]){var t=n(this).data("bb_multi_select");t.obj.invokeMethodAsync(t.method)}})})})})(jQuery);
|
||||
(function(n){n.extend({bb_slider:function(t,i,r){var f=n(t),s=f.find(".disabled").length>0;if(!s){var e=0,o=0,u=0,h=f.innerWidth();f.find(".slider-button-wrapper").drag(function(n){e=n.clientX||n.touches[0].clientX;o=parseInt(f.attr("aria-valuetext"));f.find(".slider-button-wrapper, .slider-button").addClass("dragging")},function(n){var t=n.clientX||n.changedTouches[0].clientX;u=Math.ceil((t-e)*100/h)+o;u<=0&&(u=0);u>=100&&(u=100);f.find(".slider-bar").css({width:u.toString()+"%"});f.find(".slider-button-wrapper").css({left:u.toString()+"%"});f.attr("aria-valuetext",u.toString());i.invokeMethodAsync(r,u)},function(){f.find(".slider-button-wrapper, .slider-button").removeClass("dragging");i.invokeMethodAsync(r,u)})}}})})(jQuery);
|
||||
(function(n){n.extend({bb_split:function(t){var i=n(t),f=i.innerWidth(),e=i.innerHeight(),u=0,r=0,o=0,s=0,h=!i.children().hasClass("is-horizontal");i.children().children(".split-bar").drag(function(n){f=i.innerWidth();e=i.innerHeight();h?(s=n.clientY||n.touches[0].clientY,u=i.children().children(".split-left").innerHeight()*100/e):(o=n.clientX||n.touches[0].clientX,u=i.children().children(".split-left").innerWidth()*100/f);i.toggleClass("dragging")},function(n){var t,c;h?(t=n.clientY||n.changedTouches[0].clientY,r=Math.ceil((t-s)*100/e)+u):(c=n.clientX||n.changedTouches[0].clientX,r=Math.ceil((c-o)*100/f)+u);r<=0&&(r=0);r>=100&&(r=100);i.children().children(".split-left").css({"flex-basis":r.toString()+"%"});i.children().children(".split-right").css({"flex-basis":(100-r).toString()+"%"});i.attr("data-split",r)},function(){i.toggleClass("dragging")})}})})(jQuery);
|
||||
|
||||
Reference in New Issue
Block a user