动态字段上的 jQuery x-editable 插件?

2023-12-24

我制作了一个脚本,可以在单击按钮时添加动态输入,并使用相应的 x 按钮删除不需要的输入。我的需要是添加x-可编辑每个新创建的动态输入上的插件。我正在使用 x-editable,以这种方式,在 x-editable 弹出窗口中选择的选项上,右侧的输入会获取与所选选项相对应的值。

我已经在静态元素上做到了这一点,但在动态元素上我遇到了很大的问题。 首先,连同所有的html结构,所有动态元素的类都是以其类名+动态字段数。准确地说,我正在使用配置的 Fieldcount 执行此操作:var FieldCount = 1;然后在生成 html 代码的部分添加类似的内容class="privacy-dynamic'+ FieldCount +'"。然后第一个动态元素获取 html 代码中的类,称为privacy-dynamic2, 第二个得到privacy-dynamic3等等。

现在,我的第一个结论是,我需要以某种方式向 x-editable 添加一个类似的选项,在其中我将创建一个具有相同的脚本+ FieldCount +因此,每个 x-可编辑弹出窗口都将对应于左侧的“结果输入”,而不是一个弹出窗口对应于所有动态创建的输入。

我尝试以与生成 html 结构相同的方式生成 x-editable 脚本,但它不起作用。我知道,我愚蠢地尝试用脚本生成脚本,但我很绝望。

真的,我不知道如何解决这个问题,我是一个jquery菜鸟,我迷失在其中。它甚至可以以某种方式解决吗?

这是当前情况,其中您有第一个具有 x-editable 工作的静态字段,以及具有相同结构的 x-editable 但没有它们的脚本的动态字段:http://jsfiddle.net/dzorz/QxMs7/ http://jsfiddle.net/dzorz/QxMs7/

html:

<div class="container">    
    <input type="text" class="main_activity" id="main_activity" name="main_activity" placeholder="Main activity">
    <div class="parentToDelegate">
        <a href="#" id="privacy" class="privacy" data-type="select" data-pk="1" data-value="1" data-original-title="Select visibility">public</a>
        <input type="text" id="privacy_result" class="privacy_result" value="1"/>     
    </div>

    <div class="row">
        <div id="InputsWrapper">
        </div>
    </div>
    <div class="row">
        <span id="AddMoreBox" class="btn btn-info pull-right"><i class="icon-plus"></i>Add More</span>
    </div>

script:

//x-editable
$('.privacy').editable({
    showbuttons: false,
    unsavedclass: null,
    type: 'select',
    inputclass: 'input-medium privacy-select',
    source: [
        {value: 1, text: 'public'},
        {value: 2, text: 'approved contacts only'},
        {value: 3, text: 'matching contacts'},
        {value: 4, text: 'invisible'}
    ],

});

$(function(){
        $('.parentToDelegate').on('change keyup blur', ".privacy-select", function(){
            $('.privacy_result').val($('.privacy-select').val());
        }).blur();
    });

//dynamic fields
$(document).ready(function() {

var MaxInputs       = 5; //maximum input boxes allowed
var InputsWrapper   = $("#InputsWrapper"); //Input boxes wrapper ID
var AddButton       = $("#AddMoreBox"); //Add button ID

var x = InputsWrapper.length; //initlal text box count
var FieldCount=1; //to keep track of text box added

$(AddButton).click(function (e)  //on add input button click
{
//         if(x <= MaxInputs) //max input box allowed
//         {
        FieldCount++; //text box added increment
        //add input box
        $(InputsWrapper).append('\
        <div>\
        <input type="text" class="other_activity"\
        name="other_activity" id="other_activity"\
        placeholder="Other activity" style="margin:0px 15px 10px 0px"/>\
        <a href="#" class="removeclass"><i class="icon-remove icon-remove-add"></i></a>\
            <div class="parentToDelegate-dynamic'+ FieldCount +' parent-dynamic">\
                <a href="#" id="privacy-dynamic" class="privacy-dynamic'+ FieldCount +'" data-type="select" data-pk="1" data-value="1" data-original-title="Select visibility">public</a>\
                <input type="text" id="privacy-result-dynamic'+ FieldCount +'" name="privacy-result-dynamic'+ FieldCount +'" class="privacy-result-dynamic'+ FieldCount +' privacy_dynamic" value="1"/>\
            </div>\
        </div>');
        x++; //text box increment
//         }
return false;
});

$("body").on("click",".removeclass", function(e){ //user click on remove text
    if( x > 1 ) {
            $(this).parent('div').remove(); //remove text box
            x--; //decrement textbox
    }

            $('.income_count').trigger('change');
            return false;
});

});

css:

.container{
   padding-top:100px
}

.privacy_result, .privacy_dynamic{
    width: 40px;
}

.main_activity, .other_activity{
    width: 140px;
}

.parentToDelegate{
    display:inline;
}

.icon-remove-add{
    margin-left: -10px;
    margin-top: -8px;
}

.parent-dynamic{
    display: inline;
    top: -5px;
    left: 10px;
    position: relative;
}

欢迎任何帮助或建议,您可以自由编辑我的 jsfiddle 并将其发回


我想出了一个解决方案,允许.editable第一次点击时触发。

$(document).on('mousemove', function() {
    $('.username').editable();
    ... and another other fields you need to apply this too.
});

只需申请一个mousemove事件,因为用户总是必须移动鼠标才能单击该字段。这对我来说非常适合。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态字段上的 jQuery x-editable 插件? 的相关文章

随机推荐

  • 常量截断为整数

    下面的GO程序会报错 fft go 13 constant 6 28319 truncated to integer fft go 13 cannot use 7 k N type int as type float64 in assign
  • 如何在 php 中创建我的网站的日志文件? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想知道如何用 php 创建我的网站
  • UICollectionView 对陈旧数据的断言错误

    在尝试从我的集合视图中卸载一批图像 然后用另一批图像替换它们的过程中 我遇到了一个错误 其中 根据原始图像组或后续图像组是大于还是小于预期的替换图像 发生断言错误 表示 Assertion failure in UICollectionVi
  • CUDA 中的全局内存与共享内存

    我有两个 CUDA 内核可以计算类似的东西 一种是使用全局内存 myfun是一个设备函数 它从全局内存中读取大量数据并进行计算 第二个内核将该数据块从全局内存传输到共享内存 以便数据可以在块的不同线程之间共享 我使用全局内存的内核比使用共享
  • 从精明的边缘获取边界并删除图像的背景

    我正在尝试删除我正在尝试训练神经网络的图像的背景 我使用此处描述的方法运气不佳 如何从此类图像中删除背景 https stackoverflow com questions 29313667 how do i remove the back
  • 如何在 Bootstrap 模态中显示画布

    我创建了一个地图 您可以在其中通过 Javascript 预订自行车 用户应该 1 选择一个自行车站 绿色站 可以使用自行车 2 点击一个按钮 预留按钮 3 登录画布 在模式中 页面在这里 http p4547 phpnet org bik
  • 将 Android 手机中的图像和视频获取到自定义图库中

    我正在尝试创建一个自定义图库 允许用户从其 Android 设备上包含的所有照片和视频中进行挑选 我知道如何创建仅包含照片和视频的图库 但如果我想将两者结合起来 我该怎么做 我认为问题归结于我如何创建光标 为了选择所有视频 我这样创建了光标
  • 如何将数据从隔离作用域传递到父作用域?

    我对使用 AngularJS 相当陌生 我想做的是创建一个指令并从其中的父作用域调用函数 我能够完成此任务 但我似乎无法弄清楚如何通过表达式将数据从隔离范围传递到父范围 Angular 开发者指南中对此的解释有点令人困惑 该指令 app d
  • Nodemon - 排除文件

    我想从 NodeMon 的监控中排除一些特定文件 我怎样才能做到这一点 我现有的配置 nodemon all script app js options watchedExtensions js 为了让 NodeMon 忽略监控中的一堆文件
  • 使用 jQuery 以编程方式单击 链接

    我知道这个问题以前曾被问过 但在网上搜索后我似乎找不到直接的答案 the HTML a href index php jQuery 这两个都不起作用 myAnchor click or myAnchor trigger click 实现这一
  • 使用 SlimDX 设置常量缓冲区

    我一直在关注 Microsoft Direct3D11 教程 但使用 C 和 SlimDX 我正在尝试设置常量缓冲区 但不确定如何创建或设置它 我只是尝试使用常量缓冲区设置三个矩阵 世界 视图和投影 但我在每个阶段 创建 数据输入并将其传递
  • 从 C# 以编程方式创建 Excel VBA 代码和按钮

    我正在使用简单的方法 该方法将我的 DataGridView 保存到 Excel 文档 仅 1 个工作表 中 并添加 VBA 代码和一个用于运行 VBA 代码的按钮 public void SaveFile string filePath
  • Windows Phone 8.1 DatePicker 中无法将类型“%0”的实例添加到类型“%1”的集合中

    嘿 我正在使用 MVVM 模式在 Windows Phone 8 1 中开发一个应用程序 我想从以下位置获取日期日期选择器 on the 日期更改事件在视图模型中 运行程序后我收到此错误 App1 exe WinRT 中第一次出现 Wind
  • 如何在java中获取给定的日期字符串格式(模式)?

    我想获取给定日期字符串的格式 示例 我有一个像这样的字符串2011 09 27T07 04 21 97 05 00该字符串的日期格式是yyyy MM dd T HH mm ss SSS 这里我想在传递 string 2011 09 27T0
  • 在许可证页面上添加复选框和单选按钮

    我正在 Nsis 中编写脚本 我需要在许可证页面上有选项单选按钮以及用于再次确认的复选框 是否可以这样做 因为如果我尝试插入较高优先级的是复选框 而我缺少单选按钮 最好我想只修改许可证页面而不创建自定义页面 感谢您的帮助 选项A 使用修改后
  • 为什么它对造型无懈可击?

    我只想将其颜色更改为 DD4814 但我不能 顺便说一句 这是一个 分享按钮 可能是什么原因 span class st sharethis span
  • 如何更改笔记本 Rmarkdown 中的 dpi 内联代码输出

    我知道在将 rmarkdown 笔记本编织为 html 时如何更改绘图的 dpi 但是 有没有一种方法可以更改 rmarkdown 笔记本中生成的绘图的 dpi 而无需编织文档 即在处理笔记本时绘图显示为两个代码块之间的内联输出 None
  • 有调试生产功能程序的实际经验吗?

    我感兴趣的是使用哪些工具和方法来诊断大型功能程序中的缺陷 有哪些工具有用 我目前的理解是 printf 调试 例如添加日志记录和重新部署 是通常使用的 如果您已经调试过一个功能系统 那么它与调试使用 OO 或过程语言构建的系统有何不同 Sa
  • 如何优化带有重复子查询的大查询

    我有以下包含重复子查询的巨大查询 它对我来说看起来效率很低 我该如何优化它 SELECT T2 date1 T2 date2 T2 period T1 market T1 ticker 0 AS scenario FROM SELECT D
  • 动态字段上的 jQuery x-editable 插件?

    我制作了一个脚本 可以在单击按钮时添加动态输入 并使用相应的 x 按钮删除不需要的输入 我的需要是添加x 可编辑每个新创建的动态输入上的插件 我正在使用 x editable 以这种方式 在 x editable 弹出窗口中选择的选项上 右