我创建了一个迷你游戏,用户随机创建两只具有各种遗传的狗。一切都是前端完成的,因为我不了解后端。一旦用户滚动了他们想要的狗,他们点击一个按钮来保持那条狗。单击该按钮时,我想要弹出一个提示,询问他们想要给这只狗命名的内容。唯一的问题是,当他们掷出第二只狗并命名时,该名称会覆盖第一只狗的名字。
这里是按下保持男性按钮的代码。除变量名称外,女性版本相同:
$('#keepMale').on('click', function() {
//remove any remaining rolls left to the user
maleCount = 0;
//prompt the user to name their new dog
newMale.name = prompt("Name your new male:");
//add the current dog to the user's dog array
ownedDogs[dogCount] = newMale;
//change the dog count to reflect the user's number of dogs
dogCount++;
//changes the male rolls alert to reflect that a male has been chosen
$('#maleRolls').text('You\'ve chosen your first male!');
$('#maleRolls').removeClass('alert-warning alert-danger');
$('#maleRolls').addClass('alert-success');
//change the male kept variable to reflect that a male has been kept
maleKept = 1;
//run bothKept to check if both keep buttons have been clicked
bothKept(femaleKept, maleKept);
});
这是我以后用来调用名称值的原因:
$('#dogList').html('<div class="alert alert-info dogCells"><strong>'
+ ownedDogs[0].name + '</strong></div><div class="alert alert-info dogCells"><strong>'
+ ownedDogs[1].name + '</strong></div>');
两个div都显示完全相同,即使我们在应用后直接检查控制台上的值,它们也会显示相同的值。 ownedDogs数组对文档是全局的,并且每个其他值都正常工作。我不确定我在这里做错了什么。
我很抱歉,如果这个问题过于具体,我只花了很多时间搜索并将我的代码与工作代码进行比较,而且我无法找到我所说的内容。做错了。任何帮助将非常感激。谢谢。