发送相同输入ID的不同tittle属性

时间:2018-03-03 22:17:08

标签: php jquery ajax input attributes

我有一个包含3个输入的HTML表单。如果我在theese输入中更改了某个值,我会用它来检查我的数据库中的某些内容。

所以每次如果我改变输入的值,我都需要向我的Ajax函数发送不同的“title”属性。

问题是当我更改任何值时,我的Ajax函数会获得第一个输入的标题(“BEER”)。

这是我的HTML代码:

onReceive

这是我的功能:

<input id='quantity' type='text' title='BEER' value='0' onchange='search();'>
<input id='quantity' type='text' title='VODKA' value='0' onchange='search();'>
<input id='quantity' type='text' title='GIN' value='0' onchange='search();'>
你能帮助我吗?

我试图用数组做这件事,但它不起作用。

谢谢!!

1 个答案:

答案 0 :(得分:1)

也许您打算将正在使用的对象作为参数发送给您的函数。您可以发送this

像:

<input id='quantity' type='text' title='BEER' value='0' onchange='search(this);'>

注意:我稍微修改了你的代码以帮助调试消息。

function search(obj){

  var code = $(obj).attr("title");
  console.log(code);

  $.ajax({
      url: 'search.php',
      type: 'POST',
      data: 'code='+code,
      success: function(x){

       alert(x);

      },
      error: function(jqXHR,estado,error){

          alert("ERROR");

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


<input type='text' title='BEER' value='0' onchange='search(this);'>
<input type='text' title='VODKA' value='0' onchange='search(this);'>
<input type='text' title='GIN' value='0' onchange='search(this);'>

** BTW:建议页面上不要有多个元素使用相同的ID。但是,通过以您的方式调用事件,甚至不需要ID。您可以删除它们或相应地进行更改。