javascript - 根据 DOM-inspector,FORM 看起来是空的

标签 javascript html

我正在使用的网络应用程序遇到问题。表单中的输入字段是由 jQuery 添加的。我的表单在 HTML 编辑器中如下所示:

<form id="profile" method="post" action="Profile/UpdateProfile">
        <tr><td><b>Namn:</b></td><td><parameter name="Name" class="transform">@ViewBag.Name</parameter></td></tr>
        <tr><td><b>Address:</b></td><td><parameter name="Address" class="transform">@ViewBag.Address</parameter></td></tr>
        <tr><td><b>Postaddress:</b></td><td><parameter name="ZIP" class="transform">@ViewBag.ZIP</parameter></td></tr>
        <tr><td><b>Personnummer:</b></td><td><parameter name="Pnumber" class="transform">@ViewBag.Pnumber</parameter></td></tr>
    </form>

但在 DOM 检查器中看起来像这样:

<form id="profile" method="post" action="Profile/UpdateProfile"></form>
<tbody><tr><td><b>Namn:</b></td><td><parameter name="Name" class="transform">Anton Gildebrand</parameter></td></tr>
        <tr><td><b>Address:</b></td><td><parameter name="Address" class="transform"></parameter></td></tr>
        <tr><td><b>Postaddress:</b></td><td><parameter name="ZIP" class="transform">0</parameter></td></tr>
        <tr><td><b>Personnummer:</b></td><td><parameter name="Pnumber" class="transform"></parameter></td></tr>

</tbody>

我没有输入可能看起来很奇怪,但是当用户按下编辑按钮时,“参数”标签会使用以下 JavaScript 转换为文本输入:

$('#' + id + ' .transform').each(function (index) {
         var val = $(this).html();
         $(this).html('');
         var tag = $(this).parent().html();
         var newTag = tag.replace('<parameter', '<input type="text" value="' + val + '"');
         newTag = newTag.replace('</parameter', '</input');
         $(this).parent().html(newTag);
     });

正如您所看到的,“参数”标签没有被 DOM 检查器中的表单包裹,并且没有任何内容发布到服务器(我使用 Fiddler 进行了调试)。我该如何解决?

最佳答案

将表格包裹在整个表格周围。

您不能将表单放在表格元素内部但放在表格单元格外部。如果浏览器尝试执行错误恢复,您会看到结果。使用a validator通常是个好主意。 (尽管如果您使用 JS 生成它,则需要在要生成的标记上运行它)。

(另外,use css for layout 并使用 label elements 而不是粗体元素)。

关于javascript - 根据 DOM-inspector,FORM 看起来是空的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10264126/

相关文章:

javascript - 循环字符串,根据对象中的字符值返回得分最高的单词 - JavaScript

javascript - 你能用javascript解释这个功能吗?

javascript - 按下审阅按钮时的 JQuery 预览表单

php - mysqli_stmt_execute() 期望参数 1 为 mysqli_stmt,

php - 如何单击表中的单选按钮来处理多条记录?

javascript - 如何读取 setRequestHeader 上的错误?

javascript - beforeUpdate 似乎没有被调用

javascript - Typescript es6 模块重新导出可变变量绑定(bind)

html - 如何使用Google Docs作为网站后端?

javascript - 使用按钮播放/停止动画