【问题标题】:updating html elements on page without post back更新页面上的 html 元素而不回发
【发布时间】:2014-12-31 18:57:46
【问题描述】:

我在 javascript 中动态生成 html。我的 html 正在关注

<table id="tr1">
 <tbody>
 <tr><td><img src="D:\listhell\adimg\autos\76cecc74-733d-4794-af6c-caca4d0bfd45.jpg" style="width:50px;"></td></tr>
<tr><td><img src="D:\listhell\adimg\autos\a84b01e3-7811-4897-8e4b-fa351ddd4aca.jpg" style="width:50px;"></td></tr>
<tr><td><img src="D:\listhell\adimg\autos\02ab6f2d-5a26-40a6-bcef-a18ce10dd14d.jpg" style="width:50px;"></td></tr>
<tr><td><img src="D:\listhell\adimg\autos\c47516b8-c265-4d68-a41c-fc74ade50ab7.jpg" style="width:50px;"></td></tr>
<tr><td><img src="" style="width:50px;"></td></tr></tbody></table>

我正在使用这样的 javascript 生成它

  function uploadComplete() {
        var v = $.cookie("path").split(',');
        for (i = 0; i < v.length; i++) {

            $("#tr1").append("<tr><td><img src='" + v[i] + "' style='width:50px;' /></td></tr>");

        }
        alert("completed");


    }

uploadComplete() 是一个 javascript 事件,它在使用 ajax 文件上传控件上传文件时发生。

问题是在 Chrome 中生成了 html,我使用检查元素看到它,但在浏览器 UI 中它没有显示。在 Firefox 中,表格会显示在浏览器的 ui 中,但没有加载图像。

任何建议、意见、建议都会有所帮助,谢谢

【问题讨论】:

    标签: javascript jquery html asp.net browser


    【解决方案1】:

    你必须这样做:

    $("#tr1 tbody").append("<tr><td><img src='" + v[i] + "' style='width:50px;' /></td></tr>");
    

    您需要将行附加到 tbody 而不是直接在表内

    【讨论】:

    • 我看不出这段代码有什么问题。您无法正确看到事物的唯一原因可能是页面上呈现了错误的标记。请仔细检查您的标记。你一定是错过了什么。
    【解决方案2】:

    试试这个:

    $('#tr1 tr')
       .last()
       .after("<tr><td><img src='" + v[i] + "' style='width:50px;' /></td></tr>");
    

    【讨论】:

    • 我可以在源代码中看到插入行的 html,但它没有反映在浏览器屏幕中
    • 检查你的图片路径..你能访问这些图片吗..?
    • 您是否完成了警报?
    • 你的图片应该是相对路径而不是绝对路径。假设您的 html 文件位于 D:\myhtml\home.html 中。复制 myhtml 中的 Images 文件夹。然后将您的代码更改为 希望这会有所帮助
    • 好的,我把它改成了相对路径。现在它显示 img 占位符但不显示图像本身
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-08
    • 2021-09-30
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    相关资源
    最近更新 更多