在javascript中生成一个URL

时间:2015-12-13 23:56:34

标签: javascript jquery

我需要从两个下拉列表中获取两个值,并且我需要生成一个URL。 在下面的代码中,它将json格式的某些数据发布到options标记中,当基于get id单击 getid 时,它会将数据从另一个链接检索到options标记中。将两个选项标记值组合在一起,生成一个http://localhost:8080/pmatool/RiskServlet?project='+e+'&sprint='+f的URL

var e;
$('#getid').on('click', function(){
    e=document.getElementById('proid').value;

    $.ajax({
      type : 'GET',
      dataType: "json",
      url: 'http://localhost/redmine/projects/'+e+'/issue_categories.json',
      
      success: function(results){
            
            

            $.each(results.issue_categories, function(i,value) {
              $('.issuecatclss').append('<option value="' + value.name + '">'+ value.name + '<option>'
                
                ); 
            });
           

        }
    });
});

$('#getsprint').on('click', function(){
    var f=document.getElementById('issucatid').value;
 
    });

$.ajax({
      type : 'GET',
      dataType: "json",
      url: 'http://localhost:8080/pmatool/RiskServlet?project='+e+'&sprint='+f,

      success: function(results){
                  
            $(results.assigns).each( function(i, value){
        $('.risktable').append('<tr>' +
                                '<td>'+ (i+1) +'</td>'+ 
                                '<td>'+ value.assigned_to +'</td>'+ 
                                '<td>'+value.status+'</td>'+
                                '<td>'+value.tasks.length+'</td>'+
                            '</tr>');
        });

   
        }
    });
<div class="row">
<div class="col-md-2">
    <label>Project ID  &nbsp;</label>
    <select class="form-control proidclss" id="proid"></select> 
</div>
<div class="col-md-1">
<button  class="btn btn-default" id="getid" style="margin-top: 25px;">Get ID</button></div>
<div class="col-md-2">
    <label>Issue Catogory  &nbsp;</label>
    <select class="form-control issuecatclss" id="issucatid"></select>
</div>
<div class="col-md-1">
    <button  class="btn btn-default" id="getsprint" style="margin-top: 25px;">Get Sprint</button></div>
</div>

此链接http://localhost:8080/pmatool/RiskServlet?project='+e+'&sprint='+f的生成现在不起作用。请看一下并告诉我原因,最终的网址没有生成。

1 个答案:

答案 0 :(得分:0)

你的ajax调用应该是这样的内部点击事件:

$('#getsprint').on('click', function(){
    var f=document.getElementById('issucatid').value;
    var e=document.getElementById('proid').value;
    $.ajax({
        type : 'GET',
        dataType: "json",
        url: 'http://localhost:8080/pmatool/RiskServlet?project='+e+'&sprint='+f,

        success: function(results){

            $(results.assigns).each( function(i, value){
            $('.risktable').append('<tr>' +
                                    '<td>'+ (i+1) +'</td>'+ 
                                    '<td>'+ value.assigned_to +'</td>'+ 
                                    '<td>'+value.status+'</td>'+
                                    '<td>'+value.tasks.length+'</td>'+
                                '</tr>');
            });


        }
    });
});