【问题标题】:jQuery list of linksjQuery 链接列表
【发布时间】:2018-09-28 21:19:27
【问题描述】:

我有一个根据数据库对象动态创建的链接列表,当我按下一个对象时,我需要将下一个 html 页面传递给一个变量。

我的代码是:

sections.forEach(sec => {
   var li = jQuery(`<a href='/dish.html'><li>${sec.sectionName}</li></a>`)
   jQuery('#sections').append(li);
     });
 jQuery('#sections').click(function() {
    //here I need to determine what link was pressed by the user.
        });


#sections is an ordered list

谢谢

【问题讨论】:

  • 那你遇到了什么问题?
  • 我更新了我的代码,比如按钮 answer ,现在我不确定如何提取被触摸的特定
  • 的文本。

标签: jquery html node.js


【解决方案1】:

你可以这样做。我不知道您必须从&lt;li&gt; 中提取哪些数据。我已经提取了&lt;li&gt;中包含的文字,希望对您有所帮助。

var sections = [{"sectionName":"rahul"},{"sectionName":"rohit"}]; // My dummy Object

sections.forEach(sec => {
   var li = jQuery(`<a class="mylinks" href='#'><li>${sec.sectionName}</li></a>`)
            jQuery('#sections').append(li);
      });

$(document).on("click",".mylinks",function(){
  var  touched_li = $(this).find("li").text();
  alert(touched_li); // Get section name. e.g rahul
});

【讨论】:

    【解决方案2】:

    您可以为每个“li”元素附加动作侦听器,而不是确定按下了哪个链接。 顺便说一句,当您将任何 DOM 元素分配给变量名时,这是在变量名称开头添加“$”符号的约定(这就是我这样做的原因)。

    sections.forEach(sec => {
        var $li = jQuery(`<a href='/dish.html'><li>${sec.sectionName}</li></a>`);
        $li.on('click', () => {
            //here you can attach listener for each element. You can reference using:
            var $currentElement = $(this);
            //now you can operate on current anchor element.
        });
    
        jQuery('#sections').append($li);
    });
    

    【讨论】:

    • 我不确定如何提取被触摸的特定
    • 的文本。
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签