在响应后在表格单元格上添加双击处理程序

Add doubleclick handler on table cell after response

本文关键字:双击 处理 程序 添加 单元格 响应 表格      更新时间:2023-09-26

我想添加一个双击事件处理程序到表单元格后表从servlet"下载"answers"插入"由javascript。我有一个javascript循环迭代的xml响应映射数据ini表。说单元格可以是

<td class='red' ></td>

我想在那个单元格上添加一个函数,我尝试了几种解决方案,但都不起作用。一个是:

$(".red").on("dblclick",myfunction);

帮助吗?

更新:收到响应后的表构造函数

function handleResponse(responseXML) {
    var i;
    var x=responseXML.getElementsByTagName("row");
    var out="<table><tr><th >Description</th><th >State</th><th>Note</th></tr>";
    for(i=0;i<x.length;i++){
        out+="<tr>";
    var Description = x[i].getElementsByTagName("Description")[0].childNodes[0].nodeValue;
    var State = x[i].getElementsByTagName("State")[0].childNodes[0].nodeValue;
    var note =  x[i].getElementsByTagName("Note")[0].childNodes[0];
    var note_text=" ";
    if (!(typeof note === "undefined") && !(note=='null')) {
        note_text=note.nodeValue;
    }
    out += "<td>"+Description+ "</td>";
    if(State==0)
        out+="<td class='white' ></td>";
    else if(State==1)
        out+="<td class='red' ></td>";
    else if(State==2)
        out+="<td class='yellow' ></td>";
    else if(State==3)
        out+="<td class='green' ></td>";
    out+="<td>" + note_text + "</td></tr>";
    }
    var output = document.getElementById("mytable");
    out+="</table>";
    $().on("click",".red",update());  //here is the point
    output.innerHTML=out;
}

更新:

根据你的评论,你可以试试这个:

当你打印td时,稍微改变一下模板:

out+="<td class='red' ondblclick='openModal()'></td>";

然后在你的js文件中添加如下内容:

$(document).ready(function() {
    function openModal() {
      alert( "Double clicked." );
      // Or call your other function here...
    };
});

你也可以用几种方法来做,看看这里:http://www.w3schools.com/jsref/event_ondblclick.asp