【问题标题】:Javascript output of an array with variables and html code带有变量和 html 代码的数组的 Javascript 输出
【发布时间】:2013-03-04 05:10:28
【问题描述】:

首先感谢您的帮助和支持!

我的问题是如何正确输出带有变量的 html 代码。 我正在使用 jquery 和 jquery.mobile。

我从一个用“,”分隔的数据库的 php 结果中获取并拆分为一个 javascript 数组(有效),但我无法将这些结果正确输出到动态工作列表中......他们必须在一个带有链接和 jquery 外观的列表中......但它只是向我展示了一个包含没有链接和没有 jquery 的图像的列表,它也不会停止加载。 我的互联网研究没有给我需要的帮助,我不知道如何解决这个问题。 (因为想用PhoneGap,所以这部分不能用php)

这是我的代码片段(只是重要的东西):

<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <link rel="stylesheet"  href="css/jquery.mobile-1.2.0.css" />

    <script src="js/jquery.js"></script>

    <script src="js/jquery.mobile-1.2.0.js"></script>


</head>
<body>

                <div id="result">
            <script>
$(document).ready(function(){
    $.post("Test.php",
    {
      q:"Value2ask",
    },
    function(data){

var share=data.split(",");

            if (share.length>=1){
            for(var i = 0; i < share.length; i++)
             {

            var dynlist = dynlist + ('<li><form id="'+share[i]+'" method="POST" action="Next.php" data-ajax="false">'+
            '<input id="id" name="id" value="'+share[i]+'" type="hidden"/> </form>'+
            '<img src="images/pic.png" class="img'+share[i]+'" align="LEFT" width="38" height="38" />'+
            '<a onclick="document.getElementById('+share[i]+').submit();" data-transition="slide" data-ajax="false">&nbsp; '+share[i]+'</a></li>');


            } 
            return document.innerHTML(dynlist);
            } else { 
            var dynlist =   ('<li> <a data-rel="back" data-role="button" data-icon="back" data-ajax="false">No results, click to get back </a></li>');
            return document.innerHTML(dynlist);
            }


    });
});  
</script></div></body></html>

我还尝试使用 document.write(与 innerHTML 相同的结果)和其他一些版本,如 document.write 每一行...... 没有积极的结果......请帮助:) 谢谢!

编辑:我得到了我想要的正确代码,但它没有显示我想要的结果......(例如,链接不起作用,列表中没有 jQuery......)

【问题讨论】:

  • 您是否遇到任何错误?
  • @EnterJQ no web-developer 控制台在 post 命令处停止 ...

标签: javascript html arrays variables output


【解决方案1】:

你有 var dynlist 在成功响应的 for 循环中。

改正

var dynlist;

for(conditions)
{
    dynlist += "code";
}

而不是返回 return document.innerHTML(dynlist);您可以使用 .html(),.text().attr().append() jQuery 方法将您的 dynlist 添加到 html DOM。

示例

$(documet).append(dynlist);
$('div#result').append(dynlist);

【讨论】:

  • 不起作用...它向我显示的几乎和以前一样...但是感谢我的错误,我在循环中得到了 var...
  • 好的,我明白了,所以我在 js 中得到了正确的 html 代码,它也显示出来了。但是缺少 jquery 样式......它看起来像这样:jsfiddle.net/hYQm4/32(但通常这个列表应该有一个 jquery 样式,并且还有点击链接......
  • 好的,我解决了!刚刚缺少列表视图刷新的地方!现在我得到了 jquery 移动样式,但按钮不起作用(没有动作)......有人有想法吗?
【解决方案2】:

好的,只是缺少一个列表视图刷新来获取 jquery 移动样式......并且缺少 ' 用于 getElementbyID 部分。感谢您的帮助

【讨论】:

    猜你喜欢
    • 2021-02-28
    • 2017-09-03
    • 2018-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多