我用的是引导https://vitalets.github.io/x-editable/index.html
这是我的html代码:
<a href="#" data-name="category" class="addon" data-value="{{$cat->id}}"
data-pk="{{$cat->id}}" data-type="select2" data-title="Favor llenar los campos"></a>
javascript代码:
$('.addon').editable({
placement: 'bottom',
mode: 'inline',
showbuttons: false,
source: categories,
select2: {
width: 200
},
display: function (value) {
var elem = $.grep(categories, function (o) {
return o.id == value;
});
$(this).attr('data-value', value);
$(this).parent().parent().find('.btnEdit').attr('href', '/wizard_product/' + product_id + '/category/' + value + '/edit');
return $(this).text(elem[0].text);
}
});
但是我想以编程方式更改为普通的x-editable元素,而不使用select2选项。
我尝试使用jQuery将a元素的data-type属性更改为text,但它不起作用。
$('a.addon').attr('data-type', 'text');
还尝试:
$('a.addon').select2('destroy');
还尝试:
$('a.addon').editable({type: 'text'});
但是这两个选项都不起作用。select2仍然处于活动状态。如何删除x-可编辑的select2选项?你能帮帮我吗拜托
您必须结合您尝试过的东西——销毁默认的可编辑的X-实例,更改数据类型
值,并在该元素上恢复可编辑的X-。
最简单的实现/例子是:
$('.addon').editable('destroy').data('type', 'text').editable({type: 'text'});
实际上,当您将X-editable重新应用为文本时,必须将其他设置放回原处:
$('.addon').editable('destroy');
$('.addon').data('type', 'text');
$('.addon').editable({
placement: 'bottom',
mode: 'inline',
showbuttons: false,
source: categories,
type: 'text',
display: function (value) {
var elem = $.grep(categories, function (o) {
return o.id == value;
});
$(this).attr('data-value', value);
$(this).parent().parent().find('.btnEdit').attr('href', '/wizard_product/' + product_id + '/category/' + value + '/edit');
return $(this).text(elem[0].text);
}
});
编辑:
我已经制作了一个演示,尽我所能反映您的设置,它似乎可以工作:
var categories = [{
id: 'html',
value: 'html',
text: 'html'
}, {
id: 'javascript',
value: 'javascript',
text: 'javascript'
}];
setupSelect2();
$('#useSelect2').click(function() {
$('.addon')
.data('type', 'select2')
.editable('destroy');
setupSelect2();
});
$('#useText').click(function() {
$('.addon')
.data('type', 'text')
.editable('destroy');
setupText();
});
function setupSelect2() {
$('.addon').editable({
mode: 'inline',
placement: 'bottom',
showbuttons: false,
source: categories,
select2: {
width: 200
},
display: function(value) {
var elem = $.grep(categories, function(o) {
return o.id == value;
});
$(this).attr('data-value', value);
if (elem[0])
return $(this).text(elem[0].text);
}
});
}
function setupText() {
$('.addon').editable({
mode: 'inline',
placement: 'bottom',
type: 'text',
showbuttons: false,
source: categories,
display: function(value) {
var elem = $.grep(categories, function(o) {
return o.id == value;
});
$(this).attr('data-value', value);
if (elem[0])
return $(this).text(elem[0].text);
}
});
}
<script src="https://vitalets.github.io/x-editable/assets/jquery/jquery-1.9.1.min.js"></script>
<link href="https://vitalets.github.io/x-editable/assets/select2/select2.css" rel="stylesheet" />
<script src="https://vitalets.github.io/x-editable/assets/select2/select2.js"></script>
<link href="https://vitalets.github.io/x-editable/assets/bootstrap300/css/bootstrap.css" rel="stylesheet" />
<script src="https://vitalets.github.io/x-editable/assets/bootstrap300/js/bootstrap.js"></script>
<link href="https://vitalets.github.io/x-editable/assets/x-editable/bootstrap3-editable/css/bootstrap-editable.css" rel="stylesheet" />
<script src="https://vitalets.github.io/x-editable/assets/x-editable/bootstrap3-editable/js/bootstrap-editable.js"></script>
<link href="https://vitalets.github.io/x-editable/assets/select2/select2-bootstrap.css" rel="stylesheet" />
<h3>Select 2</h3>
<a href="#" class="addon" data-type="select2" data-pk="1" data-title="Enter tags"></a>
<br>
<br>
<button id="useSelect2" class="btn btn-default">Use Select2</button>
<button id="useText" class="btn btn-default">Use Text</button>
我有这个提琴,你可以看到,当你为价格字段输入任何值时,它的弹出提示没有定位在文本上,因为当你为名称输入值时,它的数据类型是数字 https://jsfiddle.net/6da007fm/21/ 超文本标记语言 JS 这是一种正常的行为还是有解决办法。我在我的项目网页中使用它,一行有5列,因此看起来不是很整洁。 -谢谢
这里需要一些帮助来消除这个错误。这是代码-#是运行出色的原始代码,我试图适应: 以下是错误消息: 文件“”,第14行,y=df.loc[df['Adj Close']] 文件"C:\用户\apros\Anaconda3\lib\site-包\熊猫\核心\indexing.py",第1424行,在getitem返回自己。_getitem_axis(maybe_callable,轴=轴) 文件“C:\
我想内联编辑列表页上的变量使用引导x-edable。我以前使用过这个功能,但是在一个只有一个ID和一个值的表上运行良好。现在在这种情况下,用户点击内容概览页面中的用户名。单击后,用户名变成一个带有用户名的选择框。这工作得很好。但在保存时不存储数据。至少存储为0 他认为: 单击此按钮,它将变为(似乎可以): 激活选择框的脚本为: 保存后,使用内容控制器中的此功能: 真的希望有人能看到我哪里出错了,或
问题内容: 我正在为android应用程序开发自动化测试(使用Robotium)。为了确保测试的一致性和可靠性,我想以干净状态(正在测试的应用程序)开始每个测试。为此,我需要清除应用数据。可以在“设置/应用程序/管理应用程序/ [我的应用程序] /清除数据”中手动完成此操作 以编程方式完成此操作的推荐方法是什么? 问题答案: 您可以使用包管理器工具清除已安装应用的数据(类似于按设备上应用设置中的“
我正在构建一个应用程序,在注销后需要清除缓存和本地存储数据。 我的注销方法调用clearCache()方法。我正在使用cordova存储插件。 缓存和本地存储正在清理,但当我转到 设置- 如何像手动一样以编程方式清除应用程序数据?
为什么我不能以这种方式使用引导可编辑表? 在这个小提琴https://jsfiddle.net/aleksacavic/03agu1ex/1/它的工作原理是,当单击时,表格单元格处于编辑模式。但相同的代码在我的网站上不工作?我错过了什么?如我所见,在我这边,当单击时,单元格不允许更改类,只有表线程被突出显示,其他元素(输入字段)不被创建。谢啦