首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在选择更改时获取表单数据

在选择更改时获取表单数据
EN

Stack Overflow用户
提问于 2019-11-29 16:05:42
回答 3查看 1.6K关注 0票数 1

我试图获得所有的表格数据在AAL人选择国家,然后收集select.when表格数据和存储在一个变量中,

代码语言:javascript
复制
  <from name="form1" id="formid">
    <input type="text" name="address">
    <input type="text" name="pincode">
    <input type="hidden" name="price" value="80">
     <select class="form-control" name="country" id="country">
                <option value="">Select Country</option>
                @foreach ($countries as $country) 
                    <option value="{{$country->id}}">
                    {{$country->name}}
                    </option>
                @endforeach
            </select>
          </from>

这是我的ajax。

代码语言:javascript
复制
<script type="text/javascript">
   $('#country').change(function(){
        var cid = $(this).val();
        if(cid){
        $.ajax({
           type:"get",
           url:" {{url('/ava')}}/"+cid,
           success:function(res)
           {     
           alert(res);  
           }

        });
        }
    });

这是我尝试发送所有表单数据时的控制器

代码语言:javascript
复制
public function avatax(Request $request){
    $data=$request->all();
    print_r($data);
    die();
$tb = new Avalara\TransactionBuilder($client, "AGELESSZENINC", Avalara\DocumentType::C_SALESINVOICE, 'ABC');
$t = $tb->withAddress('SingleLocation', '123 Main Street',null,null, 'Irvine', $id, '92615', 'US')
    ->withLine(100.0, 1, null, "P0000000")
    ->create();
echo('<h2>Transaction #1</h2>');
echo('<pre>' . json_encode($t, JSON_PRETTY_PRINT) . '</pre>');
}
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-11-29 16:14:33

我还是不知道你的问题。如果您希望获得表单中的所有数据并在ajax中使用,您可以查看我的代码:

代码语言:javascript
复制
<script type="text/javascript">

$('#country').change(function(){
        let formData = $('#formid').serialize();
        var cid = $(this).val();
        if(cid){
        $.ajax({
           type:"get",
           url:" {{url('/ava')}}/",
           data: formData,
           success:function(res)
           {     
           alert(res);  
           }

    });
    }
});

您可以在https://api.jquery.com/serialize/中看到serialize()。有什么我可以帮您的吗。使用post方法:

代码语言:javascript
复制
<script type="text/javascript">

$('#country').change(function(){
        let formData = $('#formid').serialize();
        var cid = $(this).val();
        if(cid){
        $.ajaxSetup({
           headers: {
              'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
           }
        });
        $.ajax({
           type:"post",
           url:" {{url('/ava')}}/",
           data: formData,
           success:function(res)
           {     
           alert(res);  
           }

    });
    }
});
票数 -1
EN

Stack Overflow用户

发布于 2019-11-29 16:21:11

首先,您应该使用serialize()方法来实现您的目标。此方法将序列化整个窗体,并将其赋给任何变量。下面是我的post方法示例:

代码语言:javascript
复制
$('#country').on('change', function() {
  const formData = $('#formid').serialize();
  console.log(formData);
  $.ajax({
    type: "post",
    data: formData,
    url: " {{url('/ava')}}/",
    success: function(res) {
      alert(res);
    }

  });
});
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form name="form1" id="formid">
  <input type="text" name="address">
  <input type="text" name="pincode">
  <input type="hidden" name="price" value="80">
  <select class="form-control" name="country" id="country">
    <option value="">Select Country</option>
    <option value="us">USA</option>
    <option value="canada">Canada</option>
    <option value="brazil">Brazil</option>
  </select>
</form>

票数 1
EN

Stack Overflow用户

发布于 2019-11-29 16:17:51

代码语言:javascript
复制
<script type="text/javascript">
            $('document').ready(function(){
                alert();
                $('#country').change(function(){
                var cid = $('#country').val();
                alert(cid);
                $.ajax({
                   url: 'www.example.com/page.php',
                   method:"post",
                   data:{'country', cid},
                   success:function(res)
                   {     
                   alert(res);  
                   }

                });
                });
            });
    </script>

在page.php中,您需要像这样获取varible。回显$_POST‘’country‘;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59100948

复制
相关文章

相似问题

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