【问题标题】:Add link element in div tag with looping使用循环在 div 标签中添加链接元素
【发布时间】:2012-10-16 14:21:51
【问题描述】:

我想让我的 DIV 元素能够单击并转到详细信息页面,并将 ID 作为查询参数数据发送到我的服务器。 我找到了一些我可以使用的可能用途的例子,例如:

<div style="cursor:pointer;" onclick="document.location='http://www.google.com'">Foo</div>

只是我一头雾水想把上面的脚本加到自己构建的代码中。

我的部分代码:

    for ( var i = 0; i < response.length; ++i ) {
                str = response[i].judul;
                str2 = response[i].waktu_mulai;
                str3 = response[i].channel_code;


                var Year,Month,Date,Time,Strip,Join= ""

                var Year        = str2.substr(0,4)
                var Month       = str2.substr(5,2)
                var Date        = str2.substr(8,2)
                var Time        = str2.substr(-8,8)
                var Strip       = str2.substr(4,1)

                var Join        = Date+Strip+Month+Strip+Year+' '+Time

                listItem = document.createElement('div');
                listItem.setAttribute('data-bb-type', 'item');
                listItem.setAttribute('data-bb-img', 'images/icons/logo/'+str3+'.png');
                listItem.setAttribute('data-bb-title', str);
                listItem.innerHTML = Join+" WIB";
                container = document.createElement('div');
                container.appendChild(listItem);
                bb.imageList.apply([container]);
                dataList.appendChild(container.firstChild);  
                        if (bb.scroller) {
                                bb.scroller.refresh();
                        }
}

也许有人可以通过从数据库循环我的应用程序来帮助我使用每个 DIV 添加的链接。

【问题讨论】:

    标签: javascript dom-events blackberry blackberry-webworks


    【解决方案1】:

    确保为您的问题提供正确的上下文。您目前正在发布一个 bbUI.js 框架脚本的 sn-p,它的交互方式可能与普通 HTML、CSS3 和 JavaScript 完全不同。

    我也你两次声明你的变量。 -> var ...... = "";然后是每个单独的变量。

    还可以先尝试搜索 *,看看您是否再次问同样的问题。这个特定的问题已经被提出和/或回答过很多次,您可以在许多“从 HTML、Javascript 开始”中找到它。尽管每个人都想提供帮助,但有些东西只是在涵盖基础知识时才发现的,并且可以通过在例如谷歌。人们希望看到您自己努力寻找答案,也希望看到您在提出问题时付出的努力。您对问题的描述越好,答案就越准确。

    回到主题:

    我认为仅使用它可以解决您的问题:

    <element>.setAttribute('onclick','doSomething();'); // for normal browsers
    <element>.onclick = function() {doSomething();}; // for IE
    

    您可以在哪里替换 'doSomeThing();'使用您自己想要的代码,例如。 : "document.location='http://www.google.com'"

    如果你想让它更动态,你也可以只调用一个函数:

    <element>.setAttribute('onclick','myFunction();'); // for normal browsers
    <element>.onclick = function() {myFunction();}; // for IE
    

    我的函数在哪里:

    function MyFunction() {
        var called_id = this.id;
        var call_url = "http://myurl.com/page?id="+called_id;
        document.location = call_url;
        return; //superflous 
    }
    

    正如其他人所说,试图提高您对 * 的接受率,人们会更渴望回答您的问题。

    【讨论】: