【问题标题】:How do I replace a word on a specific cell upon clicking on an image in another cell that is on the same row?单击同一行上另一个单元格中的图像时,如何替换特定单元格上的单词?
【发布时间】:2013-07-04 16:28:24
【问题描述】:

如何在单击同一行的另一个单元格中的图像时替换特定单元格上的单词?

这是在表格完成时向表格添加新行的代码:

$('#submit').on('click',function(){
    var st = '';
    $('#myForm input[type=text],input[type=password],select').each(function(){
        st = st+ '<td>'+$(this).val()+'</td>';
        $(this).val('');
    });
    st = st+ '<td>Active</td><td><img class="pencil" src="images/pencil-black.png"></img><img class="lock" src="images/lock-black.png"></img><img class="bin" src="images/bin-black.png"></img></td>';
    $('#tablelist').append('<tr>'+st+'</tr>');
});

我想要做的是单击图像“锁定”,它将“活动”一词更改为“已阻止”(粗体和红色)。我现在面临的问题是如何告诉函数只遍历图像所在的行并替换单词?

【问题讨论】:

    标签: javascript jquery html css web


    【解决方案1】:

    这将起作用(将 class="status" 添加到 td 并在其中包含 Active):

    $(".lock").click(function () {
       $(this).parent().parent().find(".status").html("Blocked");
    });
    

    【讨论】:

    • 有效!非常感谢!但是我如何进行切换?例如当它被阻止时,我希望它切换到活动状态。
    • 您可以使用toggleClass("active") 来标记它的当前状态,或者使用data("active") 来标记它的当前状态。您也可以使用html() 检查单元格中的文本
    • 嗯,但如果我要切换课程,它不会改变文本吗?
    • 否,但您可以在点击处理程序中检查它是否具有类 (hasClass("active")),以便设置正确的新文本。
    【解决方案2】:

    使用jquery,首先在td中添加包含Text Active的类,即class="status":

    $(".lock").click(function(){
    
      $(".status",$(this).parent().parent()).html("Blocked");
    });
    

    【讨论】:

    • 它没有用。我也尝试了我的版本,它也没有工作。 $('#tablelist').on('click', '.lock', function() { $(".status",$(this).parent()).html("Blocked"); });
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多