Py学习  »  Jquery

按文本选择jquery中的选项

e700867 • 4 年前 • 601 次点击  

这应该是一个相当简单的任务,但所有的在线解决方案从来没有为我工作。

我有一个包含贷款类型的数组:

var arrLoanType = {
        1:"Regular Loan",
        2:"Emergency Loan",
        3:"Special Loan",
        ...}

我将以上内容与数据库中的条目进行比较,以便从数组中删除数据库中现有的条目。

$.each(arrLoanType, function(index, value){
    $("#loanType").append("<option value='"+index+"'>"+value+"</option>");
});

现在的问题是,我要做的是根据选项的文本有一个默认的选定字段。这是我的代码:

$('#loanType option').filter(function () { 
   return $(this).text() == selectedLoan; 
}).attr('selected','selected');

哪里 selectedLoan var selectedLoan = $("#loanSelected").val();

只是不起作用。这就是我的HTML代码结构在 $.each

<select name="" id="loanType" class="form-control" required="">
    <option value="" selected="" disabled="" hidden="">Select Loan Type...</option>
    <option value="1">Regular Loan</option>
    <option value="2">Emergency Loan</option>
    <option value="3">Special Loan</option>
...

我已经试过删除第一个项目上的“selected”属性,但仍然不起作用。任何帮助都将不胜感激。谢谢。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/56162
 
601 次点击  
文章 [ 2 ]  |  最新文章 4 年前
Markipe
Reply   •   1 楼
Markipe    4 年前

看起来不错,请看一下。控制台有错误吗?也许您忘了在doc ready中包含jquery lib还是不包含?

$(document).ready(function(e) {
  var arrLoanType = {
        1:"Regular Loan",
        2:"Emergency Loan",
        3:"Special Loan"}

  $.each(arrLoanType, function(index, value){
     $("#loanType").append("<option value='"+index+"'>"+value+"</option>");
  });

  $('#loanType option').filter(function () { 
     return $(this).text() == $("#loanSelected").val(); 
  }).attr('selected','selected');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<select name="" id="loanType" class="form-control" required=""></select>
<input id ="loanSelected" value="Special Loan" type="hidden">
AakashRajni
Reply   •   2 楼
AakashRajni    4 年前

您可以在创建时选择默认值

$.each(arrLoanType, function(index, value){
    if(value == selectedLoan)
        $("#loanType").append("<option value='"+index+"' selected>"+value+"</option>");
    else
        $("#loanType").append("<option value='"+index+"'>"+value+"</option>");
});

if else检查文本是否等于selected loan,并在创建本身中添加selected属性