0

Flexigrid.js を使用する必要があるプロジェクトに取り組んでいます。しかし、プラグインには多くのものが欠けています。たとえば、最初は有効にしたくないボタンを無効にしたいなどです。だから、私はそれをすることができませんでした。

そこで、flexigrid.js を更新して、すべての人に提供できるようにします。

これが役立つことを願っています。

ありがとうございました

4

1 に答える 1

0

タイトルや無効化などの属性を追加したい場合、どうすればいいですか?

回答: そのために flexigrid.js を更新しました。以前の js を変更し、fbutton div>span を input タグに置き換えました。

次のコードを変更します

           btnDiv.innerHTML = ("<div><span>") + (btn.hidename ? "&nbsp;" : btn.name) + ("</span></div>");
            if (btn.bclass) $('span', btnDiv).addClass(btn.bclass).css({
                paddingLeft: 20
            });
            if (btn.bimage) // if bimage defined, use its string as an image url for this buttons style (RS)
                $('span',btnDiv).css( 'background', 'url('+btn.bimage+') no-repeat center left' );
                $('span',btnDiv).css( 'paddingLeft', 20 );

            if (btn.tooltip) // add title if exists (RS)
                $('span',btnDiv)[0].title = btn.tooltip;

    btnDiv.innerHTML = ("<input type='button' value='"+ (btn.hidename ? "&nbsp;" : btn.name)+"' name='"+ (btn.hidename ? "&nbsp;" : btn.name)+"'/>") ;
            if (btn.bclass) $('input', btnDiv).addClass(btn.bclass).css({
                paddingLeft: 20
            });
            if (btn.bimage) // if bimage defined, use its string as an image url for this buttons style (RS)
                $('input',btnDiv).css( 'background', 'url('+btn.bimage+') no-repeat center left' );
            $('span',btnDiv).css( 'paddingLeft', 20 );

            if (btn.tooltip) // add title if exists (RS)
                $('input',btnDiv)[0].title = btn.tooltip;

次に、属性プロパティが存在するかどうかを確認し、属性を設定します

//checking attribute property is available or not
//Start
  if (btn.attribute) {   
    var attributes = btn.attribute; //getting the attributes 
    for(var key in attributes){
        if(key!="style" && key!="disable")  
            $('input',btnDiv).attr(key,attributes[key]);
        else if(key=="disable" && attributes[key]){
            $('input',btnDiv).attr("disabled","disable");
        }
        else if(key=="style"){ //getting style value in css
            for(var style in attributes[key]){
                $('input',btnDiv).css(style,attributes[key][style]);
            }
        }
    }     
}
//End

次に、入力用の CSS を変更します。

.flexigrid div.fbutton input
    {
        float: left;
        display: block;
        padding: 3px;
        border : none;
    }

作業完了。次に、ボタンに属性プロパティを設定します。

例 :

buttons : [
                {name: 'Add', bclass: 'add', onpress : test, attribute: {title:"add",disable:true,style:{'border':'1px solid black;'}}}
                ],

バグが見つかったら返信してください。

ありがとうございました

于 2013-04-24T18:42:17.917 に答える