将表单值返回到js变量(一页中有多个表单)

时间:2014-01-20 20:07:14

标签: javascript php

我有一个动态循环从sql表中提取数据。当按下删除按钮时,如何获取保存到js变量中的特定mile_id的值?值得注意的是,由于形式在循环内部,将有多种形式。

形式

while($row = mysqli_fetch_array($result)){
  echo '
  <form>
    <input type="hidden" id="mile_id" value="'.$row['mile_id'].'" />
    <input type="button" id="delete" value="DELETE'.$i.'" />
  </form>';
}

JS

$(document).ready(function(){
  $('form #delete').click(function(e){
    var $mile_id = $('#mile_id') // this returns [object Object]
    var yes = confirm("Are you sure?");
    if (yes){
      alert($mile_id);
    }
    else{
      return false;
    }
  });
});

4 个答案:

答案 0 :(得分:1)

This answer可能会让您感兴趣,以便从所选元素中检索值。

答案 1 :(得分:0)

您不需要隐藏输入,因为您可以使用数据值并获取jquery中的值。

while($row = mysqli_fetch_array($result)){
  echo '
  <form>
    <input type="button" class="delete" value="DELETE'.$i.'" data-value="'.$row['mile_id'].'" />
  </form>';
}

JS

$(document).ready(function(){
  $('form .delete').click(function(e){
  var $button = $(this) // this returns [object Object]
  var yes = confirm("Are you sure?");
  if (yes){
    alert($button.data("value"));
  }
  else{
    return false;
  }
 });
});

答案 2 :(得分:0)

仅使用$('#mile_id').val() $('#mile_id')

答案 3 :(得分:0)

当您提交表单时,您可以在php中检查ID。 您可以编写一个服务器来删除id = $ _GET ['mile_id'](或$ _POST)的项目。

但你真正的问题是如何在js中获得价值。 你可以用$(“#mile_id”)。val();

来实现

但你想要:

$(this).find("#mile_id").val();

编辑:你不能拥有多个表单,因为你正在使用id。制作id的类,让你的jquery正确。

所以:

$(document).ready(function(){
  $('form .delete').click(function(e){
    var $mile_id = $(this).find(".mile_id").val(); //this returns you wants
    var yes = confirm("Are you sure?");
    if (yes){
      alert($mile_id);
    }
    else{
      return false;
    }
  });
});