diff --git a/home.html b/home.html index d9549e0..03839e2 100644 --- a/home.html +++ b/home.html @@ -264,6 +264,25 @@

onClose

$(this).dialog("destroy"); } }); + +

option buttons

+
+

+ Redefine the buttons + Run +

+
+      $( "#loginwrap" ).dialog(
+          "option"
+        , "buttons"
+        , [{ 
+              text: "Ok"
+            , click: function() {
+                $( this ).dialog( "close" );
+            }
+        }]
+      );
+      
@@ -307,7 +326,6 @@

buttons: Array

] }); -

 
       

buttons: Object


@@ -332,7 +350,6 @@

buttons: Object

} }); -

     
diff --git a/js/jquery.bootstrap.js b/js/jquery.bootstrap.js index 6ffb9bd..6f38786 100644 --- a/js/jquery.bootstrap.js +++ b/js/jquery.bootstrap.js @@ -59,8 +59,8 @@ require: $msgbox.find(".modal-body").append($this); }; - var createButton = function() { - var buttons = options.buttons || {} + var createButton = function(_options) { + var buttons = (_options || options || {}).buttons || {} , $btnrow = $msgbox.find(".modal-footer"); //clear old buttons @@ -144,6 +144,11 @@ require: show(); } + if (options == "option") { + arguments[1] == 'buttons' && createButton({ buttons: arguments[2] }); + show(); + } + return self; }; diff --git a/js/jquery.bootstrap.min.js b/js/jquery.bootstrap.min.js index 370bf51..e9e8108 100644 --- a/js/jquery.bootstrap.min.js +++ b/js/jquery.bootstrap.min.js @@ -3,4 +3,4 @@ Copyright (c) Kris Zhang License: MIT (https://github.com/newghost/bootstrap-jquery-plugin/blob/master/LICENSE) */ -String.prototype.format||(String.prototype.format=function(){var e=arguments;return this.replace(/{(\d+)}/g,function(t,n){return typeof e[n]!="undefined"?e[n]:t})}),function(e){e.fn.dialog=function(t){var n=this,r=e(n),i=e(document.body),s=r.closest(".dialog"),o="dialog-parent",u=function(){var t='';s=e(t),e(document.body).append(s),s.find(".modal-body").append(r)},a=function(){var r=t.buttons||{},i=s.find(".modal-footer");i.html("");for(var o in r){var u=r[o],a="",f="",l="btn-default",c="";u.constructor==Object&&(a=u.id,f=u.text,l=u["class"]||u.classed||l,c=u.click),u.constructor==Function&&(f=o,c=u),$button=e(''.format(f,l)),a&&$button.attr("id",a),c&&function(e){$button.click(function(){e.call(n)})}(c),i.append($button)}},f=function(){s.modal("show")},l=function(e){s.modal("hide").on("hidden.bs.modal",function(){e&&(r.data(o).append(r),s.remove())})};return t.constructor==Object&&(!r.data(o)&&r.data(o,r.parent()),s.size()<1&&u(),a(),e(".modal-title",s).html(t.title||""),e(".modal-header .close",s).click(function(){var e=t.onClose||l;e.call(n)}),(t["class"]||t.classed)&&s.addClass(t["class"]||t.classed),t.autoOpen!==!1&&f()),t=="destroy"&&l(!0),t=="close"&&l(),t=="open"&&f(),n}}(jQuery),$.messager=function(){var e=function(e,t){var n=$.messager.model;arguments.length<2&&(t=e||"",e=" "),$("
"+t+"
").dialog({title:e,onClose:function(){$(this).dialog("destroy")},buttons:[{text:n.ok.text,classed:n.ok.classed||"btn-success",click:function(){$(this).dialog("destroy")}}]})},t=function(e,t,n){var r=$.messager.model;$("
"+t+"
").dialog({title:e,onClose:function(){$(this).dialog("destroy")},buttons:[{text:r.ok.text,classed:r.ok.classed||"btn-success",click:function(){$(this).dialog("destroy"),n&&n()}},{text:r.cancel.text,classed:r.cancel.classed||"btn-danger",click:function(){$(this).dialog("destroy")}}]})};return{alert:e,confirm:t}}(),$.messager.model={ok:{text:"OK",classed:"btn-success"},cancel:{text:"Cancel",classed:"btn-danger"}},function(e){e.fn.datagrid=function(t,n){var r=this,i="success",s=e(this),o=function(t){var n=s.data("config"),r=n.selectChange,o=n.singleSelect,u=n.edit,a=function(t){var n=e(this),u=n.hasClass(i),a=e("tbody tr",s).index(n),f=s.data("rows")[a]||{};o&&e("tbody tr",s).removeClass(i),n.toggleClass(i),r&&r(!u,a,f,n)};(r||typeof o!="undefined")&&t.click(a);var f=function(t){var n=e(this),r=n.closest("tr"),i=e("tbody tr",s).index(r),o=s.data("rows")[i]||{},u=n.attr("name");u&&(o[u]=n.val())};u&&t.find("input").keyup(f)},u=function(e,t,n){var r="";for(var i=0,s=e[0].length;i"+l+""}return r+="",r},a=function(t){if(!n)return;var r=s.data("config")||{},i=r.columns,a=n.rows||n,f="";if(a)for(var l=0,c=a.length;l",e("tbody",s).remove(),s.data("rows",a).append(f),r.edit&&s.addClass("edit"),o(e("tbody tr",s))};if(t&&t.constructor==Object){var f=t.columns;if(f){e("thead",s).size()<1&&s.append("");var l="";for(var c=0,h=f[0].length;c"+(p.title||"")+""}l+="",s.data("config",t),e("thead",s).html(l)}}t=="loadData"&&a();if(t=="getData")return s.data("rows");if(t=="getConfig")return s.data("config");if(t=="getColumns")return s.data("config").columns;t=="unselectRow"&&(typeof n!="undefined"?e("tbody tr",s).eq(n).removeClass(i):e("tbody tr",s).removeClass(i));if(t=="updateRow"){var d=n.index,v=s.data("config"),m=s.data("rows"),g=n.row,f=v.columns;m&&(g=e.extend(m[d],g),s.data("rows",m));var y=e(u(f,g,v));e("tbody tr",s).eq(d).after(y).remove(),o(y)}if(t=="getSelections"){var m=s.data("rows"),b=[];return e("tbody tr",s).each(function(t){e(this).hasClass(i)&&b.push(m[t])}),b}if(t=="insertRow"){var d=n.index||0,g=n.row,v=s.data("config"),m=s.data("rows")||[];if(!v||!g)return s;var w=e("tbody tr",s),y=e(u(v.columns,g,v)),E=w.eq(d);o(y),E.size()?E.before(y):e("tbody",s).append(y),m.splice(d,0,g)}if(t=="deleteRow"&&n>-1){e("tbody tr",s).eq(n).remove();var m=s.data("rows");m.splice(n,1)}return r}}(jQuery),function(e){e.fn.tree=function(t,n){var r=this,i=e(r),s=Array.prototype.push,o="glyphicon-file",u="glyphicon-folder-open",a="glyphicon-folder-close",f=function(e,t,n){var r=[];!t&&r.push('
    '.format(n=="close"?"none":"block"));for(var i=0,l=e.length;i");var m=typeof h=="undefined"?o:d=="close"?a:u;r.push(' '.format(m)),r.push("{0}".format(c.text,h?" class='tree-node'":"",p?" data-id='{0}'".format(p):"",v?" data-attr='{0}'".format(JSON.stringify(v)):"")),h&&s.apply(r,f(h,!1,d)),r.push("")}return!t&&r.push("
"),r},l=function(){e("span.glyphicon-folder-open, span.glyphicon-folder-close",i).click(function(t){var n=e(this),r=n.closest("li").children("ul");n.hasClass(a)?(n.removeClass(a).addClass(u),r.show()):(n.removeClass(u).addClass(a),r.hide())})};if(t&&t.constructor==Object){var c=t.data;if(c&&c.constructor==Array){var h=f(c,!0);i.html(h.join("")),i.data("config",t),l()}var p=t.onClick;p&&e("li>a",i).click(function(){var t=e(this);attrs=t.attr("data-attr"),p.call(r,{id:t.attr("data-id"),attributes:attrs?JSON.parse(attrs):{},text:t.text()},t)})}return r}}(jQuery) \ No newline at end of file +String.prototype.format||(String.prototype.format=function(){var e=arguments;return this.replace(/{(\d+)}/g,function(t,n){return typeof e[n]!="undefined"?e[n]:t})}),function(e){e.fn.dialog=function(t){var n=this,r=e(n),i=e(document.body),s=r.closest(".dialog"),o="dialog-parent",u=function(){var t='';s=e(t),e(document.body).append(s),s.find(".modal-body").append(r)},a=function(r){var i=(r||t||{}).buttons||{},o=s.find(".modal-footer");o.html("");for(var u in i){var a=i[u],f="",l="",c="btn-default",h="";a.constructor==Object&&(f=a.id,l=a.text,c=a["class"]||a.classed||c,h=a.click),a.constructor==Function&&(l=u,h=a),$button=e(''.format(l,c)),f&&$button.attr("id",f),h&&function(e){$button.click(function(){e.call(n)})}(h),o.append($button)}},f=function(){s.modal("show")},l=function(e){s.modal("hide").on("hidden.bs.modal",function(){e&&(r.data(o).append(r),s.remove())})};return t.constructor==Object&&(!r.data(o)&&r.data(o,r.parent()),s.size()<1&&u(),a(),e(".modal-title",s).html(t.title||""),e(".modal-header .close",s).click(function(){var e=t.onClose||l;e.call(n)}),(t["class"]||t.classed)&&s.addClass(t["class"]||t.classed),t.autoOpen!==!1&&f()),t=="destroy"&&l(!0),t=="close"&&l(),t=="open"&&f(),t=="option"&&(arguments[1]=="buttons"&&a({buttons:arguments[2]}),f()),n}}(jQuery),$.messager=function(){var e=function(e,t){var n=$.messager.model;arguments.length<2&&(t=e||"",e=" "),$("
"+t+"
").dialog({title:e,onClose:function(){$(this).dialog("destroy")},buttons:[{text:n.ok.text,classed:n.ok.classed||"btn-success",click:function(){$(this).dialog("destroy")}}]})},t=function(e,t,n){var r=$.messager.model;$("
"+t+"
").dialog({title:e,onClose:function(){$(this).dialog("destroy")},buttons:[{text:r.ok.text,classed:r.ok.classed||"btn-success",click:function(){$(this).dialog("destroy"),n&&n()}},{text:r.cancel.text,classed:r.cancel.classed||"btn-danger",click:function(){$(this).dialog("destroy")}}]})};return{alert:e,confirm:t}}(),$.messager.model={ok:{text:"OK",classed:"btn-success"},cancel:{text:"Cancel",classed:"btn-danger"}},function(e){e.fn.datagrid=function(t,n){var r=this,i="success",s=e(this),o=function(t){var n=s.data("config"),r=n.selectChange,o=n.singleSelect,u=n.edit,a=function(t){var n=e(this),u=n.hasClass(i),a=e("tbody tr",s).index(n),f=s.data("rows")[a]||{};o&&e("tbody tr",s).removeClass(i),n.toggleClass(i),r&&r(!u,a,f,n)};(r||typeof o!="undefined")&&t.click(a);var f=function(t){var n=e(this),r=n.closest("tr"),i=e("tbody tr",s).index(r),o=s.data("rows")[i]||{},u=n.attr("name");u&&(o[u]=n.val())};u&&t.find("input").keyup(f)},u=function(e,t,n){var r="";for(var i=0,s=e[0].length;i"+l+""}return r+="",r},a=function(t){if(!n)return;var r=s.data("config")||{},i=r.columns,a=n.rows||n,f="";if(a)for(var l=0,c=a.length;l",e("tbody",s).remove(),s.data("rows",a).append(f),r.edit&&s.addClass("edit"),o(e("tbody tr",s))};if(t&&t.constructor==Object){var f=t.columns;if(f){e("thead",s).size()<1&&s.append("");var l="";for(var c=0,h=f[0].length;c"+(p.title||"")+""}l+="",s.data("config",t),e("thead",s).html(l)}}t=="loadData"&&a();if(t=="getData")return s.data("rows");if(t=="getConfig")return s.data("config");if(t=="getColumns")return s.data("config").columns;t=="unselectRow"&&(typeof n!="undefined"?e("tbody tr",s).eq(n).removeClass(i):e("tbody tr",s).removeClass(i));if(t=="updateRow"){var d=n.index,v=s.data("config"),m=s.data("rows"),g=n.row,f=v.columns;m&&(g=e.extend(m[d],g),s.data("rows",m));var y=e(u(f,g,v));e("tbody tr",s).eq(d).after(y).remove(),o(y)}if(t=="getSelections"){var m=s.data("rows"),b=[];return e("tbody tr",s).each(function(t){e(this).hasClass(i)&&b.push(m[t])}),b}if(t=="insertRow"){var d=n.index||0,g=n.row,v=s.data("config"),m=s.data("rows")||[];if(!v||!g)return s;var w=e("tbody tr",s),y=e(u(v.columns,g,v)),E=w.eq(d);o(y),E.size()?E.before(y):e("tbody",s).append(y),m.splice(d,0,g)}if(t=="deleteRow"&&n>-1){e("tbody tr",s).eq(n).remove();var m=s.data("rows");m.splice(n,1)}return r}}(jQuery),function(e){e.fn.tree=function(t,n){var r=this,i=e(r),s=Array.prototype.push,o="glyphicon-file",u="glyphicon-folder-open",a="glyphicon-folder-close",f=function(e,t,n){var r=[];!t&&r.push('
    '.format(n=="close"?"none":"block"));for(var i=0,l=e.length;i");var m=typeof h=="undefined"?o:d=="close"?a:u;r.push(' '.format(m)),r.push("{0}".format(c.text,h?" class='tree-node'":"",p?" data-id='{0}'".format(p):"",v?" data-attr='{0}'".format(JSON.stringify(v)):"")),h&&s.apply(r,f(h,!1,d)),r.push("")}return!t&&r.push("
"),r},l=function(){e("span.glyphicon-folder-open, span.glyphicon-folder-close",i).click(function(t){var n=e(this),r=n.closest("li").children("ul");n.hasClass(a)?(n.removeClass(a).addClass(u),r.show()):(n.removeClass(u).addClass(a),r.hide())})};if(t&&t.constructor==Object){var c=t.data;if(c&&c.constructor==Array){var h=f(c,!0);i.html(h.join("")),i.data("config",t),l()}var p=t.onClick;p&&e("li>a",i).click(function(){var t=e(this);attrs=t.attr("data-attr"),p.call(r,{id:t.attr("data-id"),attributes:attrs?JSON.parse(attrs):{},text:t.text()},t)})}return r}}(jQuery) \ No newline at end of file diff --git a/src/jquery.dialog.js b/src/jquery.dialog.js index e1151c4..5f4ac26 100644 --- a/src/jquery.dialog.js +++ b/src/jquery.dialog.js @@ -39,8 +39,8 @@ require: $msgbox.find(".modal-body").append($this); }; - var createButton = function() { - var buttons = options.buttons || {} + var createButton = function(_options) { + var buttons = (_options || options || {}).buttons || {} , $btnrow = $msgbox.find(".modal-footer"); //clear old buttons @@ -124,6 +124,11 @@ require: show(); } + if (options == "option") { + arguments[1] == 'buttons' && createButton({ buttons: arguments[2] }); + show(); + } + return self; };