首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在UI中显示之前,使用jquery选中复选框

在UI中显示之前,使用jquery选中复选框
EN

Stack Overflow用户
提问于 2014-08-24 19:18:03
回答 3查看 88关注 0票数 0

下面是我的案例:

我正在从mysql数据库中读取数据,然后使用jsp、servlet和jquery将其显示在表格中。我正在创建动态行。我的问题是我想根据数据库中的值选择复选框。以下是示例代码:

代码语言:javascript
复制
$.ajax({
                url: 'FetchQAStatus',
                type: 'POST',
                contentType: 'text/html',

                success: function (data) {
                    console.log(data);
                    var tbody = $('#edit_table_body');
                      $.each(data, function(key,value) { 
                          tbody.append('<tr><td>'+value['id']+'</td><td><select      name="project" id="project" class="project"><option value="Geo">Geo</option>'+
                                '<option value="UAC">UAC</option></select></td><td><input type="text" name="jira" id="jira" class="freshblue" value="'+
                                value['jira']+'"/>'+'<td><textarea name="summary" id="summary" >'+value['summary']+'</textarea></td><td>'+
                                '<input type="text" name="status" id="status" class="freshblue" value="'+value['status']+'"/></td>'+
                                '<td><textarea name="comments" id="comments" >'+value['comments']+'</textarea></td><td><input type="checkbox" '+
                                'name="prod_deploy" id="prod_deploy">'+
                                '</td></tr>');

                            $(this).find("input#prod_deploy").prop("checked", true);

                      });



                        $(".edit_status").slideToggle();

                },

但这不是选中复选框,因为复选框在UI上仍然不可见/未加载。请帮帮忙

EN

回答 3

Stack Overflow用户

发布于 2014-08-24 19:34:40

您可以执行以下任一操作:

代码语言:javascript
复制
...
var content = '<tr>'
  + '<td>' + value['id'] + '</td>'
  + '<td>'
    + '<select name="project" id="project" class="project">'
      + '<option value="Geo">Geo</option>'
      + '<option value="UAC">UAC</option>'
    + '</select>'
  + '</td>'
  + '<td>'
    + '<input type="text" name="jira" id="jira" class="freshblue" value="' + value['jira'] + '"/>'
  + '</td>'
  + '<td>'
    + '<textarea name="summary" id="summary" >' + value['summary'] + '</textarea>'
  + '</td>'
  + '<td>'
    + '<input type="text" name="status" id="status" class="freshblue" value="' + value['status'] + '"/>'
  + '</td>'
  + '<td>'
    + '<textarea name="comments" id="comments" >' + value['comments'] + '</textarea>'
  + '</td>'
  + '<td>'
    + '<input type="checkbox" name="prod_deploy" id="prod_deploy" checked>'
  + '</td>'
+ '</tr>';

tbody.append(content);
$(content).find('input#prod_deploy').prop('checked', true);

或者这样:

代码语言:javascript
复制
...
var content = '<tr>'
  + '<td>' + value['id'] + '</td>'
  + '<td>'
    + '<select name="project" id="project" class="project">'
      + '<option value="Geo">Geo</option>'
      + '<option value="UAC">UAC</option>'
    + '</select>'
  + '</td>'
  + '<td>'
    + '<input type="text" name="jira" id="jira" class="freshblue" value="' + value['jira'] + '"/>'
  + '</td>'
  + '<td>'
    + '<textarea name="summary" id="summary" >' + value['summary'] + '</textarea>'
  + '</td>'
  + '<td>'
    + '<input type="text" name="status" id="status" class="freshblue" value="' + value['status'] + '"/>'
  + '</td>'
  + '<td>'
    + '<textarea name="comments" id="comments" >' + value['comments'] + '</textarea>'
  + '</td>'
  + '<td>'
    + '<input type="checkbox" name="prod_deploy" id="prod_deploy" checked>' // <== notice the "checked" attribute here
  + '</td>'
+ '</tr>';

tbody.append(content);
票数 0
EN

Stack Overflow用户

发布于 2014-08-24 20:54:33

这个问题已经解决了。发布答案,以防有人在寻找:

代码语言:javascript
复制
  var prodCheck = (value['isProd'] == true) ? "checked":"";
                          var content = '<tr><td>'+value['id']+'</td><td><select name="project" id="project" class="project"><option value="Geo">Geo</option>'+
                            '<option value="UAC">UAC</option></select></td><td><input type="text" name="jira" id="jira" class="freshblue" value="'+
                            value['jira']+'"/>'+'<td><textarea name="summary" id="summary" >'+value['summary']+'</textarea></td><td>'+
                            '<input type="text" name="status" id="status" class="freshblue" value="'+value['status']+'"/></td>'+
                            '<td><textarea name="comments" id="comments" >'+value['comments']+'</textarea></td><td><input type="checkbox" '+
                            'name="prod_deploy" class="prod_deploy" '+prodCheck+'>'+
                            '</td></tr>';
                          tbody.append(content);
票数 0
EN

Stack Overflow用户

发布于 2014-08-24 20:58:14

下面是代码,您可以在显示复选框之前将其显示为选中状态。

代码语言:javascript
复制
<input type="checkbox" checked="true" />

现在,按照上面的方式追加您想要显示选中复选框的位置。

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

https://stackoverflow.com/questions/25471142

复制
相关文章

相似问题

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