【问题标题】:Grab multiple input radio values and Submit to PHP script获取多个输入单选值并提交到 PHP 脚本
【发布时间】:2011-05-12 15:32:33
【问题描述】:

今天我想学习如何获取多个输入类型的按钮值与原始值进行比较并最后提交到 php 脚本!我怎样才能用 Jquery 做到这一点?

<html>
<body>
<div id="leftDiv" class="container"> 
<form action="" method="get"> 
    <fieldset>
        <p>Something 0</p>

        <lable>Yes</label>
        <input type="radio" name="Group0" value="1" >

        <lable>No</label>
        <input type="radio" name="Group0" value="0" >

    </fieldset>

    <fieldset>
        <p>Something 1</p>

        <lable>Yes</label>
        <input type="radio" name="Group1" value="1" >

        <lable>No</label>
        <input type="radio" name="Group1" value="0" >

    </fieldset>

    <fieldset>
        <p>Something 2</p>

        <lable>Yes</label>
        <input type="radio" name="Group2" value="1" >

        <lable>No</label>
        <input type="radio" name="Group2" value="0" >

    </fieldset>

    <fieldset>  
        <input type="submit" name="update" class="button" value="Submit"> 
    </fieldset>
</form>
</div>
</body>
</html>

以上数值由php脚本生成(可以是1或100)

【问题讨论】:

  • 你能更详细一点或者至少给我们举个例子吗?
  • 您需要更详细地扩展您的问题,例如,添加您用于单选按钮的 HTML,为您想要实现的目标编写一些伪代码,解释您的 PHP 脚本期望的输入,等
  • 输入需要不同的名称
  • 输入的编号相同,因为属于同一组。

标签: php ajax jquery


【解决方案1】:

最简单的方法实际上是设置在 HTML 中选择的正确值,并将 .onChange 事件绑定到它们。否则,具有原始值的隐藏字段,然后 onChange 像这样比较它们

   //a hidden input field with the original value
    <input type='hidden' id='Group0' value='0'/>
    // a set of radio fields that reference the original field we will be comparing with in their 'rel' attribute for easy jQuery selection
    Off<input type='radio' name='Group0' rel='#Group0' class='compareOnChane' value=0/><br/>
    On <input type='radio' name='Group0' rel='#Group0' class='compareOnChane' value=1/>

    <script>
    $(document).ready(function(){
       $('.compareOnChange').live('change',function(){
         if($($(this).attr('rel')).val()!=$(this).val(){
          //the value currently is different than the original value, fire our action
         }

       });

    });

    </script>

【讨论】:

    【解决方案2】:

    这是一个很好的教程,可以教你这些基础知识:

    http://trevordavis.net/blog/ajax-forms-with-jquery

    您可以像这样在 JSON 中获取单选按钮的值:

    var radios = {};
    $('input[type="radio"]').each(function() {
      radios[$(this).attr('name')] = $(this).attr('value');
    });
    

    【讨论】:

    • 好的,那么 radios 是存储所有数据的数组吗?假设我将有多个带有单选按钮的 div 应该引用这个特定的 div,我该怎么做?那么在存储所有值之后,我如何将它发送到 php?
    • var radios 确实将所有数据存储为 JSON。目前它获取页面上所有单选按钮的数据。要仅对选中的选择器执行此操作,您需要添加 :checked 选择器,并且仅对某些(在 div 中)执行此操作,您将首先放置 div ID:$('#divID input[type= “收音机”]:选中')。要将这些数据发送到 php,您需要通读我链接到的教程。我在这里重复它没有意义。
    • 我第一次阅读并在一个小时内完成了该教程。真的很好,很值得。它会比很多地方更好地为你总结事情。
    猜你喜欢
    • 2018-08-17
    • 2017-12-13
    • 1970-01-01
    • 2014-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-15
    相关资源
    最近更新 更多