如何将movieID存储在变量中

时间:2018-12-04 17:15:43

标签: jquery html

我正在尝试将我的movieID存储为变量,但是我正在努力寻找方法:

$(".delete").click(function(){
    movieID=$('.movieContainer').attr("movieID");
    console.log(movieID);
});

我希望能够拉出movieID,所以我有多部电影,如果要编辑它,我可以使用movieID来做,使其与数组的索引号匹配。我很菜鸟,已经尝试环顾四周,但还没有找到任何东西:S

for (var i = 0; i < movieEntries.length; i++) {
  var title = movieEntries[i][0];
  var content = movieEntries[i][1];
  var date = movieEntries[i][2];
  var movieID = i;

  var movieEdit = '<div class="movieContainer" movieID="' + movieID + '">' +
    '<div class="movieTitle"><input type="text" value="' + title + '"></div>' +
    '<div class="movieContent"><input type="text" value="' + content + '"></div>' +
    '<div class="movieDate"><input type="text" value="' + date + '"></div>' +
    '<input type="button" value="edit" class="edit">' +
    '<input type="button" value="delete" class="delete">' +
    '</div>' + '<br><br><br>'

  $("#mainContainer").append(movieEdit);
}

1 个答案:

答案 0 :(得分:1)

您需要使用this关键字来定位相关的movieContainer,例如:

$(".delete").click(function(){
    movieID=$(this).closest('.movieContainer').attr("movieID");
    console.log(movieID);
});

for (var i = 0; i < 3; i++) {
  var title = 'title';
  var content = 'content';
  var date = 'date';
  var movieID = i;

  var movieEdit = '<div class="movieContainer" movieID="' + movieID + '">' +
    '<div class="movieTitle"><input type="text" value="' + title + '"></div>' +
    '<div class="movieContent"><input type="text" value="' + content + '"></div>' +
    '<div class="movieDate"><input type="text" value="' + date + '"></div>' +
    '<input type="button" value="edit" class="edit">' +
    '<input type="button" value="delete" class="delete">' +
    '</div>' + '<br><br><br>';

  $("#mainContainer").append(movieEdit);
}

$(".delete").click(function() {
  movieID = $(this).closest('.movieContainer').attr("movieID");
  console.log(movieID);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="mainContainer"></div>