Javascript 无法使用jquery更改链接的id和文本

Javascript 无法使用jquery更改链接的id和文本,javascript,jquery,Javascript,Jquery,我认为有以下链接: <a href="#" id="delete">Delete Data</a> 试试,零钱 $(self).text('Restore Data'); id应该正常更改。试试,小的更改 $(self).text('Restore Data'); id应该正常更改。使用.text()而不是attr来更改文本 $(self).text("newtext") .attr('id')应该可以工作 $(self).attr('id','restor

我认为有以下链接:

<a href="#" id="delete">Delete Data</a> 
试试,零钱

$(self).text('Restore Data');
id应该正常更改。

试试,小的更改

$(self).text('Restore Data');
id应该正常更改。

使用.text()而不是attr来更改文本

$(self).text("newtext") 
.attr('id')应该可以工作

 $(self).attr('id','restore')
但是,如果希望锚点在id更改后使用另一个事件,则这不会删除click事件取消绑定()click或use事件委派,如下所示

$(staticParentElement).on('click','#delete',function(){
/*code*/
});

$(staticParentElement).on('click','#restore',function(){
/*code*/
});
使用.text()而不是attr来更改文本

$(self).text("newtext") 
.attr('id')应该可以工作

 $(self).attr('id','restore')
但是,如果希望锚点在id更改后使用另一个事件,则这不会删除click事件取消绑定()click或use事件委派,如下所示

$(staticParentElement).on('click','#delete',function(){
/*code*/
});

$(staticParentElement).on('click','#restore',function(){
/*code*/
});
你可以试试

$("#delete").click(function() {

  var that = this;

  //delete the data

  $(that).attr('id', 'restore');
  $(that).text('Restore Data');

  });
代码检查

您可以尝试

$("#delete").click(function() {

  var that = this;

  //delete the data

  $(that).attr('id', 'restore');
  $(that).text('Restore Data');

  });

代码检查

文本不是属性,所以如果要多次使用文本,请使用变量

var txt='Restore Data'
$(self).text(txt);

文本不是属性,所以如果要多次使用文本,请使用变量

var txt='Restore Data'
$(self).text(txt);

文本不是属性。使用$(self.text(“还原”);我假设在更改id后,您希望另一个处理程序获取calledtext不是一个属性。使用$(self.text(“还原”);我假设在更改id后,您希望另一个处理程序被调用Danton,在更改id后,我单击inspect元素并查看id是否已更改,但当我单击链接时,它的行为仍然类似于id为“delete”。当我查看页面源代码时,我可以看到id仍然是“delete”。也许我应该删除该链接并添加一个具有新id的新链接,而不是只更改id?@EducateyYourself这就是为什么您应该像我显示的$(staticParentElement)那样使用事件委派。on(‘单击’……谢谢Anton,现在它可以工作了。唯一的问题是,当我单击“删除数据”,然后在网站内浏览,然后使用“删除还原”视图返回到该页面时,它建议我“删除数据”,尽管它应该是“还原数据”,因为我上次已经单击了“删除数据”。你能帮我绕过这个问题吗?@EducateyYourself我不完全确定你的意思,但如果我理解正确,你正在寻找将其保存为cookie或localStorage。你可能应该就此向stackoverflow提出一个新问题。Anton,更改id后,我单击inspect元素,看到id已更改,但当我单击链接时,它的行为仍与id是“delete”。当我查看页面源时,我可以看到id仍然是“delete”。也许我应该删除该链接并添加一个具有新id的新链接,而不是仅更改id?@EducateYourself这就是为什么您应该像我显示的$(staticParentElement)那样使用事件委派。on(‘单击’……谢谢Anton,现在它可以工作了。唯一的问题是,当我单击“删除数据”,然后在网站内浏览,然后使用“删除还原”视图返回到该页面时,它建议我“删除数据”,尽管它应该是“还原数据”,因为我上次已经单击了“删除数据”。你能帮我绕过这个问题吗?@EducateyYourself我不完全清楚你的意思,但如果我理解正确,你正在寻找将其保存为cookie或localStorage。为此,你可能应该问一个关于stackoverflow的新问题。