首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery选择隐藏输入值下一个toButton

jQuery选择隐藏输入值下一个toButton
EN

Stack Overflow用户
提问于 2013-10-30 18:30:40
回答 3查看 692关注 0票数 0

我有一份物品清单。我希望能够单击一个按钮将项目添加到mySQL。在测试的时候,我只有一个conf框来显示ID,问题是我无法让它工作。我是jQuery和AJAX的新手。我觉得这很容易。但是,经过一天早上的尝试,在没有运气的情况下尝试了一系列不同的方法,我想我应该问一下我的确切代码。

代码语言:javascript
复制
<page loaded with>
wp_enqueue_script('jquery');
wp_enqueue_script('jquery-ui-core');
wp_enqueue_script('jquery-ui-tabs');
wp_enqueue_script('jquery-ui-autocomplete');

<script>
function addCharItem () {
    var itemID = $(this).closest("td").find('input[name="itemID"]').val(); //this is close (I think) but message is showing as undefined.
//  var itemID = $("input").siblings(".itemID").val() //gets first ID in table only
    confirm ('The item ID is ' + itemID); 
//adding ajax and other stuff later.  
}
</script>

<html>
...
<tr>
  <td colspan="5"><dl><dt>Backpack (empty)</dt><dd></dd></dl></td>
  <td><input name="hdnItemID" type="hidden" value="742"/>
      <input name="btnAddItem" type="button" id="btnAddItem" value="+" onclick="addCharItem ()"/></td>
  <td><input name="btnBuyItem" type="button" id="btnBuyItem" value="$" /></td>
 </tr>
 ...
</html>

这都是从Wordpress中的一个模板php页面构建的。我不认为这些东西有什么奇怪之处。但如果有,告诉我你还需要什么。谢谢你的帮助和建议。我知道我一定是错过了一些很小的东西,我只是还不知道该怎么做。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-10-30 20:46:01

因此,由于某种原因,上面的代码似乎没有抓住HTML元素。因此,我实现了jQuery按钮。

代码语言:javascript
复制
<script>
  $(function() {
    $( "input[type=submit], a, button" )
      .button()
      .click(function( event ) {
        event.preventDefault();
        var thisValue = $(this).val(); //to distinguish buttons
        console.log(thisValue);
        var itemID = $(this).prev('input[id="hdnItemID"]').val()
        confirm ('The item ID is ' + itemID);
            //do other stuff
      });
  });
</script>

<html changes>
...
<tr>
  <td colspan="5"><dl><dt>Backpack (empty)</dt><dd></dd></dl></td>
  <td><input class="itemID" id="hdnItemID" type="hidden" value="742"/>
    <input type="submit" value="+" /></td>
  <td><input class="itemID" id="hdnItemID" type="hidden" value="742"/>
    <input type="submit" value="$" /></td></tr>
...
</html>

我希望我能告诉你它为什么不起作用。看来我已经尝试了很多不同的方法。上述建议也应该有效。如果有人知道为什么会这样,请告诉我。我,我相信还有其他人,他们很想知道这个“抓到”的问题。谢谢你的小费!

票数 0
EN

Stack Overflow用户

发布于 2013-10-30 18:37:19

您可以使用.siblings(selector)

代码语言:javascript
复制
 $(this).siblings('input[name="hdnItemID"]').val()

代码语言:javascript
复制
 $(this).prev('input[name="hdnItemID"]').val()
票数 1
EN

Stack Overflow用户

发布于 2013-10-30 18:37:45

使用hdnItemID作为您的名称,而不是itemID

代码语言:javascript
复制
$(this).closest("td").find('input[name="hdnItemID"]').val();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19691047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档