22

How do you adjust the input width of the popup

it doesn't seem like there is any option for it in

http://vitalets.github.io/x-editable/docs.html#text

4

6 回答 6

28

您可以使用inputclass选项来提供一个 CSS 类,您可以在其中添加输入字段的宽度,例如

<a href="#" id="username" data-type="text" data-pk="1">awesome</a>
<script>
$(function(){
    $('#username').editable({
        url: '/post',
        title: 'Enter username',
        inputclass: 'some_class'
    });
});
</script>

和CSS:

.some_class{
   width: 240px;
}
于 2013-05-09T05:28:45.280 回答
21

通过使用 data-inputclass 属性,您可以避免为页面上的每个元素使用自定义 Javascript:

<a href="#" id="username" data-inputclass="some_class" data-type="text" data-pk="1" >awesome</a>

和 CSS:

.some_class{
   width: 240px;
}
于 2014-09-08T20:52:27.370 回答
19

如果您不想更改 .css 文件,可以通过更改其模板来设置 x-editable 输入字段的样式:

<a href="#" id="username" data-type="text" data-pk="1">awesome</a>
<script>
    $(function(){
        $('#username').editable({
            url: '/post',
            title: 'Enter username',
            tpl: "<input type='text' style='width: 400px'>"
        });
    });
</script>

请注意“tpl”属性。

于 2014-06-05T08:02:49.933 回答
10

如果您使用 angularjs xeditable 执行此操作,则可以使用“e-style”而不是“style”,例如:

<a> e-style="width: 180px" editable-text="article.title" e-required="" </a>

我不确定如果没有 angularjs 是否可行……但值得一试

于 2014-07-30T19:23:40.220 回答
5

我们可以在选项数组中使用 tpl

array(
        'class'=>'editable.EditableColumn',
        'name'=>'url',
        'value'=>'getFullUrl("/").$data->url',
        'id'=>'menu_id',
        'headerHtmlOptions'=>array('text-align: center;'),
        'htmlOptions'=>array(''),
        'editable'=>array(
            'apply'=>true,
            'name' => 'url',
            'url'=>$this->createUrl('menuItems/XUpdate'),
            'placement'=>'right',
            'options'=> array('tpl'=>'<input type="text" style="width: 500px">'),
        ),

    ),
于 2016-03-07T12:08:09.423 回答
1

我在代码中进行了修改以控制宽度。也许不是优雅的解决方案,但它对我有用。问候!包括添加一个 div 作为获取 .editableform .form-control 类的宽度的指南

在进行更改之前进行 BKP!

bootstrap-editable.js 在第 14 行添加此代码

var GLOBAL_aux_id_ei = 0;

在第 181 行添加此代码

var w = $('#div-guide-'+GLOBAL_aux_id_ei).width();
w = w -  ((w * 20) / 100);
$('.editableform .form-control').css({"width":""+w+"px"});

在第 628 行添加此代码并修改现有代码

GLOBAL_aux_id_ei = GLOBAL_aux_id_ei + 1; 
$.fn.editableform.template = '<form class="form-inline editableform"    id="frm-editable-'+GLOBAL_aux_id_ei+'">'+
'<div class="control-group">' + 
'<div>\n\
<div class="editable-input"></div><div class="editable-buttons"></div>\n\
</div>'+
'<div class="editable-error-block"></div>' + 
'</div>' + 
'</form>\n\
<div style="display:none;" id="div-guide-'+GLOBAL_aux_id_ei+'"></div>';

bootstrap-editable.css 在第 158 行的 .editable-container.editable-inline 类中

width: 100%;
于 2015-09-09T14:26:23.220 回答