gpt4 book ai didi

javascript - onClick如何存储元素的键值?

转载 作者:行者123 更新时间:2023-12-01 03:43:29 24 4
gpt4 key购买 nike

       var jobID = {};

function gotData(data) {
var date = Today;

var container = document.getElementById('pos_1');
var container2 = document.getElementById('jobapp');

data.forEach(function(jobSnap) { // loop over all jobs
var key = jobSnap.key;
var job = jobSnap.val();
var newCard = `
<li class="pos-card" id="${key}">
<div class="content">
<div class="title new">${job.JobTitle}</div>
<div class="dept">Customer Service</div>
<div class="date">${date}</div>
<div class="refer">Apply</div>
</div>
<ul class="desc">
<li>${job.JobSummary}</li>
</ul>
</li>
`;
container.innerHTML += newCard;
jobID.value = key;
console.log(key);
})
}

上面的循环函数显示 Firebase 数据库子级中的所有条目,如下所示,并在右侧控制台中列出了各自的 Firebase 数据库 key 。 enter image description here

我需要做的是捕获所单击的各个职位的键,以便我可以在下面的函数中使用它来保存单击的键下的职位申请的所有条目。我尝试将 jobId 声明为全局变量,然后将键值分配给它,但我无法在另一个函数中使用它。如何捕获单击作业的键,然后在另一个函数中将其用作 JobId?例如我如何在下面的函数中使用它

       function newApplication() {

var database = firebase.database();
var applicant_Name = document.getElementById('name').value;
var applicant_Number = document.getElementById('phone').value;
var applicant_email = document.getElementById('email').value;
var AuthorId = firebase.auth().currentUser.uid;
var cover_letter = document.getElementById('cover_letter').value;

console.log(key);
var JobId.value = key;

var postData = {
ApplicantName: applicant_Name,
ApplicantNumber: applicant_Number,
Applicantemail: applicant_email,
Author: AuthorId,
Cover_letter: cover_letter,
};

var newPostKey = firebase.database().ref().child('Applications').push().key;

var updates = {};


updates['/Applications/' + newPostKey] = postData;
updates[ JobId + '/Applications/' + newPostKey] = postData;

return firebase.database().ref().update(updates);

}

控制台在newApplication函数中显示“key is not Define”的错误消息。

更新:这是我的点击处理程序

 $('.container').on('click', '.refer', function(e){
alert(jobID.value );
$('.positions').addClass('fadeOut');
$('.refer-card').addClass('fade');
$('.return').fadeIn('fast');
})

最佳答案

如果单击 .refer 元素,则在其单击处理程序中,具有 id="${key}" 的相应元素由 $( this).closest("li")

因此您似乎想要:

var JobId = $(this).closest("li").prop('id');

尚不清楚如何调用 newApplication(),但似乎您需要将 JobId 作为参数传递。

关于javascript - onClick如何存储元素的键值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43697935/

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