在replaceWith之后设置焦点

码头

我正在开发一个发票系统,现在进入了订单项。

为此,我有一个表,该表最终将有一个按钮,用于向DOM动态添加另一个订单项。

在此之前,我将尝试解决单个订单项中的问题。就我而言,这是注释部分。

对于注释的输入,我有一个带有一些文本的P标记,该元素的onclick替换为一个textarea。

<h2>line items</h2><hr>
    <table id='lineitems'>
        <tr>
            <th>Order #</th>
            <th>Style #</th>
            <th>Item Name/Description</th>
            <th>Quantity</th>
            <th>Cost</th>
        </tr>
        <tr>
            <td><input type='text' name='ladingnum' /></td>
            <td><input type='text' name='invoicenum' /></td>
            <td><input type='text' name='invoicenum' style='width:300px;'/></td>
            <td><input type='text' name='invoicenum' /></td>
            <td><input type='text' name='invoicenum' /></td>    
        </tr><tr><td colspan=4>
            <div id='thenotes'>
                <input type='hidden' class='comments' name='notes'/>
                <textarea class='comments'></textarea>
                <p class='edit'>[ click here to add notes ]</p>
            </div>
        </td></tr>

    </table>

这是我正在使用的jQuery。

$(document).on('click', '.edit', function() {
    var odata = $(this).closest("input:hidden").val();
    if( odata == undefined ) odata = '';
    $(this).closest("textarea.comments").val(odata).focus();
});

$(document).on('focusout', '.liveedit', function () {
        var idata = $(this).val();
        if( idata == '' ) idata = "[ click here to add notes ]";
        $(this).prevAll("input:hidden").val(idata);
        $(this).replaceWith("<p class='edit'>"+idata+"</p>");
});

使用它,我得到了这种效果。

页面加载... P标签具有单击此处的默认内容以添加注释。单击时,它变成一个文本区域,其中包含隐藏字段中的所有内容。它也应该集中在这个新创建的textarea上。

最重要的是。我似乎无法获得textarea的值来进入隐藏的输入字段...我在做什么错?

马格努斯·恩格达尔

选择器.closest('input:hidden')将仅选择它的最接近的父级,而不选择同级。您必须使用.siblings('input:hidden').closest('div').find('input:hidden')选择输入和文本区域。

像这样:

在这里演示

$(function () {
    $(document).on('click', '.edit', function () {
        var odata = $(this).closest("div").find("input:hidden").val();
        if (odata == undefined) odata = '';
        $(this).closest("div").find("textarea.comments").val(odata).focus();
    });

    $(document).on('focusout', '.liveedit', function () {
        var idata = $(this).val();
        if (idata == '') idata = "[ click here to add notes ]";
        $(this).prevAll("input:hidden").val(idata);
        $(this).replaceWith("<p class='edit'>" + idata + "</p>");
    });
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在replaceWith之后设置焦点

来自分类Dev

在jAlert之后设置焦点

来自分类Dev

在jquery / javascript中的输入框中的特定项目之后设置焦点

来自分类Dev

在If命令之后设置命令

来自分类Dev

jQuery在按Tab键后设置焦点

来自分类Dev

Javascript-在警报消息后设置焦点

来自分类Dev

Summernote:初始化后设置焦点

来自分类Dev

WPF-单击ListView后设置焦点

来自分类Dev

Javascript-在警报消息后设置焦点

来自分类Dev

Android:在setOnClickListener之后设置setOnTouchListener

来自分类Dev

在TreeView.DataBind()之后设置SelectedNode

来自分类Dev

在JTable大小之后设置JFrame大小

来自分类Dev

之后设置绘图线型

来自分类Dev

在添加之前或之后设置片段内容?

来自分类Dev

dompdf-仅在首页之后设置页边距

来自分类Dev

ReactJS,挂钩-如何在.map()函数之后设置状态?

来自分类Dev

如何在unsafeWindow.open之后设置“加载”操作

来自分类Dev

在选择开始日期之后设置结束日期

来自分类Dev

在jquery.colorfy之后设置Textarea的值

来自分类Dev

如何在 Bash 中的 heredoc 之后设置参数

来自分类Dev

在对话框中验证后设置字段焦点(扩展库对话框)

来自分类Dev

HTML元素的游标在之后设置,但在拖动过程中未设置

来自分类Dev

仅在更改绑定输入的焦点之后才设置属性

来自分类Dev

ng-show之后将焦点设置在输入字段上

来自分类Dev

DoCmd.OpenForm之后,焦点未设置在正确的字段上

来自分类Dev

C ++ istream:gcount()是否总是在read()之后设置,即使它失败了?

来自分类Dev

在panel.setInvisible之后设置JTextField值不会更新值

来自分类Dev

HTML栏位;在json_encode之后设置PHP数组-发送到Jquery?

来自分类Dev

如何在新vue之后设置vue数据并进行数据绑定

Related 相关文章

  1. 1

    在replaceWith之后设置焦点

  2. 2

    在jAlert之后设置焦点

  3. 3

    在jquery / javascript中的输入框中的特定项目之后设置焦点

  4. 4

    在If命令之后设置命令

  5. 5

    jQuery在按Tab键后设置焦点

  6. 6

    Javascript-在警报消息后设置焦点

  7. 7

    Summernote:初始化后设置焦点

  8. 8

    WPF-单击ListView后设置焦点

  9. 9

    Javascript-在警报消息后设置焦点

  10. 10

    Android:在setOnClickListener之后设置setOnTouchListener

  11. 11

    在TreeView.DataBind()之后设置SelectedNode

  12. 12

    在JTable大小之后设置JFrame大小

  13. 13

    之后设置绘图线型

  14. 14

    在添加之前或之后设置片段内容?

  15. 15

    dompdf-仅在首页之后设置页边距

  16. 16

    ReactJS,挂钩-如何在.map()函数之后设置状态?

  17. 17

    如何在unsafeWindow.open之后设置“加载”操作

  18. 18

    在选择开始日期之后设置结束日期

  19. 19

    在jquery.colorfy之后设置Textarea的值

  20. 20

    如何在 Bash 中的 heredoc 之后设置参数

  21. 21

    在对话框中验证后设置字段焦点(扩展库对话框)

  22. 22

    HTML元素的游标在之后设置,但在拖动过程中未设置

  23. 23

    仅在更改绑定输入的焦点之后才设置属性

  24. 24

    ng-show之后将焦点设置在输入字段上

  25. 25

    DoCmd.OpenForm之后,焦点未设置在正确的字段上

  26. 26

    C ++ istream:gcount()是否总是在read()之后设置,即使它失败了?

  27. 27

    在panel.setInvisible之后设置JTextField值不会更新值

  28. 28

    HTML栏位;在json_encode之后设置PHP数组-发送到Jquery?

  29. 29

    如何在新vue之后设置vue数据并进行数据绑定

热门标签

归档