jquery - 如何将标签转换为文本框?

标签 jquery html jquery-mobile

您好,我想在图像单击事件上将标签字段转换为文本框。 我的 html 文件是

<div>
    <div id="tagCust">Customer Details<img src="images/edit.png" class="alignright"/></div>
</div>

<div id="contactdetail">
    <div id="contactInfo">
        <label for="emailid" class="contactText" data-inline="true">Email Id*</label>
    </div>
         <label for="mobileno" class="contactText" data-inline="true">Mobile No.</br></label>
         <label for="custid" class="contactText" data-inline="true">Customer Id.</label>
</div>

当用户单击编辑图像时,我想将 mobilenoemailid 标签转换为文本框。我怎样才能做到这一点?

最佳答案

你不能真正“转换”它,但你可以.replaceWith()标签 html,或 .hide().show()它。

例如:

$('.alignright').on('click', function() {
    $('label.contactText').slice(0,2).each(function() {
        $(this).replaceWith( '<input type="text"/>' );
    });
});

.replaceWith还可以寻址节点引用而不是 HTML 字符串。然而,这将以破坏性的方式起作用,并且只有当您不需要再次显示标签时才有意义。否则,创建那些 <input>元素同时创建 <label>节点,只需给它们 CSS 样式 display: none 。单击时,您可以切换这些样式(none 到阻止,反之亦然)或切换类别。

关于jquery - 如何将标签转换为文本框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11737688/

相关文章:

javascript - 如何从 jsonp 响应中获取值并将该值设置为其他函数中的其他变量?

javascript - 隐藏由 anchor 的 href 选择

javascript - 按 parent 数量的顺序运行each()函数

javascript - 我的 javascript 需要什么条件?它是一个脚本,弹出一个对话框,其中包含字段留空的表单验证备注

html - 按程序生成分页

javascript - JQuery 从 tr 空格问题中获取 th 或 td 文本

javascript - 如何防止 Enter 按钮在 Firefox 12 中运行其默认行为?

javascript - 如何从 WPF WebBrowser 控件调试页面的 JavaScript 代码

html - CSS:如何在单元格表的两端放置控件

jquery-mobile - 如何让 FullCalendar 在触控设备上工作?