如何在jQuery中将函数重新附加到html元素。让我有很多锚标签和JS:
$(document).ready(function() {
$('a').click(function(event) {
event.preventDefault();
//doing some manipulation and making ancher html string and replacing with current ancher tags like i.e
var newAncherTags = "mytest1";
$(this).replaceWith(newAncherTags); // using replacewith method is my requirement
});
$('#a').click(function() {
//definition
});
$('#b').click(function() {
//definition
});
$('#c').click(function() {
//definition
});
$('#d').click(function() {
//definition
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" id="a">test1</a>
<a href="#" id="b">test2</a>
<a href="#" id="c">test3</a>
<a href="#" id="d">test4</a>
&#13;
替换锚标签事件丢失后,单击功能不起作用。它只与一个html页面无关,我有很多页面,我无法改变每个html页面上的jQuery函数,如
$(document).on('click','#a', function(event) {});
对锚标记的操作功能在一个文件中,所以我想在这个函数中做一些事情。
答案 0 :(得分:0)
使用您使用的相同解决方案。
$(document).ready(function() {
$(document).on("click", 'a', function(event) {
event.preventDefault();
//doing some manipulation and making ancher html string and replacing with current ancher tags like i.e
var newAncherTags = "mytest1";
$(this).replaceWith(newAncherTags); // using replacewith method is my requirement
});
$(document).on("click", '#a', function() {
//definition
});
$(document).on("click", '#b', function() {
//definition
});
$(document).on("click", '#c', function() {
//definition
});
$(document).on("click", '#d', function() {
//definition
});
});
&#13;
<a href="#" id="a">test1</a>
<a href="#" id="b">test2</a>
<a href="#" id="c">test3</a>
<a href="#" id="d">test4</a>
&#13;