如何使用jquery将包含数据的dispatchEvent添加到类中

how to append a dispatchEvent containing data to a class with jquery

本文关键字:添加 dispatchEvent 数据 何使用 jquery 包含      更新时间:2023-09-26

我的脚本有问题,我自己看不出问题:

    $("#mainsub").append(newRow + "<div class='showMore' onclick='document.dispatchEvent(expand, { 'postId': " + pf.id + " })'>Show More</div></div>");

我的webkit调试器说:"Uncaught SyntaxError: Unexpected token;"当我点击元素。

以前有人遇到过这种情况吗?这行代码有问题吗?

编辑:** newRow看起来像这样:

    var newRow = "<div id=" + pf.id + ">"+rowContents;

rowContents is:

    rowContents += "<div class='"+tagName+"'>"+tag.text()+"</div>";

标签名称只是来自我正在解析的一些XML。

另一个编辑:我要把整个函数放进去,以防这对你有帮助

pf.parseResults = function(){
    $("#mainsub").empty();
    var $xml = $(pf.xml);
    var $query = $xml.find('query_result').children().each(function() {
        var row = $(this);
        var rowContents = "";
        row.children().each(function() {
            var tag = $(this);
            var tagName = tag[0].tagName;
            if(tagName != "ID"){
                rowContents += "<div class='"+tagName+"'>"+tag.text()+"</div>";
            }
            if(tagName === "ID"){
                pf.id = tag.text();
            }
        });
        var newRow = "<div id=" + pf.id + ">" + rowContents;
        $("#mainsub").append(newRow + "<div class='showMore' onclick='document.dispatchEvent(expand, { ''postId'': " + pf.id + " })'>Show More</div></div>");// this fires an event with data attached listing the id of the element the user tapped/**/
    });
    $("#mainsub").append("<div onclick='document.dispatchEvent(nextPage)'><p>Next</p></div>");// figure out how to not show next when there will not be another page
    if(pf.getPage > 0){
        $("#mainsub").append("<div onclick='document.dispatchEvent(previousPage)'><p>Previous</p></div>");// show go to previous as long at it will exist
    }
};

当嵌套相同类型的引号(在您的情况下为单引号)时,您必须像这样转义它们:

    $("#mainsub").append(newRow + "<div class='showMore' onclick='document.dispatchEvent(expand, { ''postId'': " + pf.id + " })'>Show More</div></div>");

由于这行代码很长,我不想更改太多,因此我将指出转义引号在此expand, { ''postId'': " + pf.id + " }片段中