gpt4 book ai didi

Javascript 函数不适用于 html 中的多个按钮单击

转载 作者:行者123 更新时间:2023-11-30 14:51:02 25 4
gpt4 key购买 nike

我没有 javascript 知识,从 Stakeflow 找到了一些技巧,在这些帮助下我成功地编写了以下代码。我的页面中有 5 张图片,我试图通过点击图片来发送邮件,但是当点击 Image1 时,这段代码在邮件正文上打印页面的 URL,当点击其他图片时,URL 不会出现。我也在尝试刷新页面,这不适用于此代码。当我多次按 Image1 时,它会多次将 URL 连接到邮件正文。有什么方法可以简化此代码并在每次单击图像时在邮件正文上发送带有页面 URL 的邮件?代码是:

<!DOCTYPE html>
<html>
<head>
<title>XYZ</title>
</head>

<body>
<a id='mailTo' href="mailto:test@mail.com?subject=Image1&body=URL: " method="post"><img src="Images1.png" onclick="subBod()">
<a id='mailTo' href="mailto:test@mail.coms?ubject=Image2&body=URL: " method="post"><img src="Images2.png" onclick="subBod()" >
<a id='mailTo' href="mailto:test@mail.com?subject=Image3&body=URL: " method="post"><img src="Images3.png" onclick="subBod()">
<a id='mailTo' href="mailto:test@mail.com?subject=Image4&body=URL: " method="post"><img src="Images4.png" onclick="subBod()">
<a id='mailTo' href="mailto:test@mail.com?subject=Image5&body=URL: " method="post"><img src="Images5.png" onclick="subBod()">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
function subBod() {
//var mbody = prompt("Please enter the ticket refrence number without initial OMY-");
var mbody = document.URL;
var href = $("#mailTo").attr('href')
var nRef = href + mbody
$("#mailTo").attr("href", nRef)
window.location.reload()
};
</script>
</body>
</html>

谢谢。

最佳答案

id 属性在同一个文档中应该是唯一的,尝试用常见的类替换重复的属性,如下面的代码片段所示。

注意:现在您有了一个公共(public)类,您可以从 JS 代码将事件直接附加到它。

$('.mailTo').on('click', subBod);

function subBod() {
var mbody = document.URL;
var href = $(this).attr('href');
var nRef = href + mbody;

$(this).attr("href", nRef)

console.log(href);

window.location.href = nRef;
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<a class='mailTo' href="mailto:test@mail.com?subject=Image1&body=URL: " method="post"><img src="Images1.png"></a>
<a class='mailTo' href="mailto:test@mail.coms?ubject=Image2&body=URL: " method="post"><img src="Images2.png"></a>
<a class='mailTo' href="mailto:test@mail.com?subject=Image3&body=URL: " method="post"><img src="Images3.png"></a>
<a class='mailTo' href="mailto:test@mail.com?subject=Image4&body=URL: " method="post"><img src="Images4.png"></a>
<a class='mailTo' href="mailto:test@mail.com?subject=Image5&body=URL: " method="post"><img src="Images5.png"></a>

关于Javascript 函数不适用于 html 中的多个按钮单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48098541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com