当Ajax响应来自使用laravel控制器的select2时,如何检查JQuery附加选项中的条件?

齐亚敏

当我在表中附加一个选择选项jquery时,我想比较两个值,我想比较if(response.score_range[j].score_range_id =+ item.score_range_id+),该选项selected默认情况下应该是,但是我做不到。如果有人知道,请帮助。

jQuery代码:-

success: function (response) {
    var trHTML = '';
    if (response.student.length > 0) {
         $.each(response.student, function (i, item) {
               trHTML += '<tr><td>' + item.st_id + '</td><td>' + item.full_name + '</td><td>' + item.father_name + '</td>' +
                      '<td>' +
                      '<input type="number"  name="score[]" id="score" step="any" class="form-control" value="'+item.score+'">' +
                      '<input type="hidden"  name="student_id[]" id="student_id" step="any" class="form-control" value="'+item.st_id+'">' +

                      '</td>' +
                      '<td>' + '<select class="form-control select2_1" name="score_range" id="score_range">';
                        for (var j = 0; j < response.score_range.length; j++) {
                            trHTML += '<option  "'+if(response.score_range[j].score_range_id +'='+ item.score_range_id+'") selected value="' + response.score_range[j].score_range_id +'">' + response.score_range[j].type + ' ( ' + response.score_range[j].low_range + '-' + response.score_range[j].up_range + ' )' + '</option>';
                        }
                        trHTML += +'</select>' +
                            '</td></tr>';
           });
           $('#tbl_report').html(trHTML);

      }
      else {
          trHTML = '<tr style="text-align: center"><td colspan="8">' + 'هیچ اطلاعاتی یافت نشد' + '</td></td>';
          $('#tbl_report').html(trHTML);

       }
 }

这是dd(response(['student'=>$student,'score_range'=>$range]))结果:

 +original: array:2 [
"student" => Collection {#760
  #items: array:6 [
    0 => {#759
      +"st_id": 557
      +"full_name": "احمد نوید"
      +"father_name": "محمد"
      +"score": 95.0
      +"score_range_id": 1
    }
    1 => {#753
      +"st_id": 563
      +"full_name": "الیاس"
      +"father_name": "محمد ضیا"
      +"score": 100.0
      +"score_range_id": 1
    }
    2 => {#755
      +"st_id": 580
      +"full_name": "سارا"
      +"father_name": "نادر علی"
      +"score": 92.0
      +"score_range_id": 1
    }
    3 => {#754
      +"st_id": 582
      +"full_name": "آرزو عادلی"
      +"father_name": "عبدالحکیم"
      +"score": 96.0
      +"score_range_id": 1
    }
    4 => {#756
      +"st_id": 584
      +"full_name": "نرگس شریفی"
      +"father_name": "محمد حسین"
      +"score": 93.0
      +"score_range_id": 1
    }
    5 => {#757
      +"st_id": 590
      +"full_name": "احمد نوید"
      +"father_name": "نادر علی"
      +"score": 91.0
      +"score_range_id": 1
    }
  ]
}
"score_range" => Collection {#797
  #items: array:2 [
    0 => {#799
      +"score_range_id": 1
      +"low_range": "90"
      +"up_range": "100"
      +"type": "A"
    }
    1 => {#800
      +"score_range_id": 2
      +"low_range": "80"
      +"up_range": "90"
      +"type": "B"
    }
  ]
}
]
斯瓦蒂

您可以保留一些变量,并使其保持一致,""以便如果条件匹配则为该变量赋值selected""然后在您的选项标签内传递此变量。

演示代码

var response = {
  "student": [{
    "st_id": 557,
    "full_name": "احمد نوید",
    "father_name": "محمد",
    "score": 95.0,
    "score_range_id": 1
  }, {
    "st_id": 55,
    "full_name": "احمد نوید",
    "father_name": "محمد",
    "score": 9.0,
    "score_range_id": 2
  }, {
    "st_id": 55,
    "full_name": "احمد نوید",
    "father_name": "محمد",
    "score": 87,
    "score_range_id": 3
  }],
  "score_range": [{
    "score_range_id": 1,
    "low_range": "90",
    "up_range": "100",
    "type": "A"
  }, {
    "score_range_id": 2,
    "low_range": "190",
    "up_range": "10",
    "type": "B"
  }, {
    "score_range_id": 3,
    "low_range": "190",
    "up_range": "10",
    "type": "C"
  }]
}
var trHTML = '';
$.each(response.student, function(i, item) {
  trHTML += '<tr><td>' + item.st_id + '</td><td>' + item.full_name + '</td><td>' + item.father_name + '</td>' +
    '<td>' +
    '<input type="number"  name="score[]" id="score" step="any" class="form-control" value="' + item.score + '">' +
    '<input type="hidden"  name="student_id[]" id="student_id" step="any" class="form-control" value="' + item.st_id + '">' +

    '</td>' +
    '<td>' + '<select class="form-control select2_1" name="score_range">';
  var selecteds = item.score_range_id;
  for (var j = 0; j < response.score_range.length; j++) {
    var option_selected = "";
    //check if equals
    if (response.score_range[j].score_range_id == selecteds) {
      option_selected = "selected" //selected
    }
    //append it as well..
    trHTML += '<option ' + option_selected + ' value="' + response.score_range[j].score_range_id + '" >' + response.score_range[j].type + ' ( ' + response.score_range[j].low_range + '-' + response.score_range[j].up_range + ' )' + '</option>';
  }
  trHTML += '</select></td></tr>';
});

$('#tbl_report').html(trHTML);
//intialize select2 ...
$("select[name=score_range]").select2({
  "width": '200px'
})
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css">
<script src="https://code.jquery.com/jquery-3.5.0.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>

<table id="tbl_report">
</table>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何检查来自laravel控制器的ajax响应是否为空?

来自分类Dev

Laravel 4:响应来自控制器的AJAX请求

来自分类Dev

如何接收来自Codeigniter控制器的Ajax响应?

来自分类Dev

来自form_for的控制器中的Ajax javascript响应使用javascript呈现为纯文本

来自分类Dev

MVC .net Core2 - 控制器中的模型为空(使用 Jquery ajax 时)

来自分类Dev

在 Laravel 5.2 中使用附加控制器进行路由时,RouteCollection 中的 NotFoundHttpException

来自分类Dev

打开时如何检查变量值是否为select2中的选项之一?

来自分类Dev

Ruby on Rails select2 AJAX / JQuery-将参数传递给控制器不起作用

来自分类Dev

我如何从magento 2中的控制器获得ajax响应

来自分类Dev

我如何从magento 2中的控制器获得ajax响应

来自分类Dev

使用jQuery Select2搜索时隐藏选项

来自分类Dev

Laravel - 如何通过 AJAX (jQuery) 调用控制器函数

来自分类Dev

如何在YII2中使用PJAX处理来自控制器的错误?

来自分类Dev

使用 AJAX 附加选择器

来自分类Dev

如何使用c#在页面加载时在<select>标记中添加选项?

来自分类Dev

select2在打开和刷新时添加选项值

来自分类Dev

如何使用jQuery ajax magento调用控制器

来自分类Dev

控制器 Laravel 中的条件

来自分类Dev

使用Laravel控制器将html select选项的值保存在数据库中

来自分类Dev

使用 API 时如何组织 Laravel 控制器

来自分类Dev

检查控制器中是否存在404响应错误-Laravel 5

来自分类Dev

如何使用 url 中的 jquery ajax 将变量传递给控制器

来自分类Dev

在 Rails 控制器中检查 JSON 响应中的值

来自分类Dev

Laravel在jQuery中使用控制器中的JSON

来自分类Dev

向我的Select2添加选项

来自分类Dev

如何使用jQuery将数据发布到laravel控制器方法中

来自分类Dev

如何使用jQuery将数据发布到laravel控制器方法中

来自分类Dev

如何根据ember.js控制器中的ajax响应显示或隐藏微调器?

来自分类Dev

当我使用 AJAX jQuery 向 Laravel 5 控制器提交较大的文件时,它获取空数据

Related 相关文章

  1. 1

    如何检查来自laravel控制器的ajax响应是否为空?

  2. 2

    Laravel 4:响应来自控制器的AJAX请求

  3. 3

    如何接收来自Codeigniter控制器的Ajax响应?

  4. 4

    来自form_for的控制器中的Ajax javascript响应使用javascript呈现为纯文本

  5. 5

    MVC .net Core2 - 控制器中的模型为空(使用 Jquery ajax 时)

  6. 6

    在 Laravel 5.2 中使用附加控制器进行路由时,RouteCollection 中的 NotFoundHttpException

  7. 7

    打开时如何检查变量值是否为select2中的选项之一?

  8. 8

    Ruby on Rails select2 AJAX / JQuery-将参数传递给控制器不起作用

  9. 9

    我如何从magento 2中的控制器获得ajax响应

  10. 10

    我如何从magento 2中的控制器获得ajax响应

  11. 11

    使用jQuery Select2搜索时隐藏选项

  12. 12

    Laravel - 如何通过 AJAX (jQuery) 调用控制器函数

  13. 13

    如何在YII2中使用PJAX处理来自控制器的错误?

  14. 14

    使用 AJAX 附加选择器

  15. 15

    如何使用c#在页面加载时在<select>标记中添加选项?

  16. 16

    select2在打开和刷新时添加选项值

  17. 17

    如何使用jQuery ajax magento调用控制器

  18. 18

    控制器 Laravel 中的条件

  19. 19

    使用Laravel控制器将html select选项的值保存在数据库中

  20. 20

    使用 API 时如何组织 Laravel 控制器

  21. 21

    检查控制器中是否存在404响应错误-Laravel 5

  22. 22

    如何使用 url 中的 jquery ajax 将变量传递给控制器

  23. 23

    在 Rails 控制器中检查 JSON 响应中的值

  24. 24

    Laravel在jQuery中使用控制器中的JSON

  25. 25

    向我的Select2添加选项

  26. 26

    如何使用jQuery将数据发布到laravel控制器方法中

  27. 27

    如何使用jQuery将数据发布到laravel控制器方法中

  28. 28

    如何根据ember.js控制器中的ajax响应显示或隐藏微调器?

  29. 29

    当我使用 AJAX jQuery 向 Laravel 5 控制器提交较大的文件时,它获取空数据

热门标签

归档