无法从ajax下拉列表中传递选定的值

时间:2017-07-18 10:32:25

标签: javascript java jsp

我有一个ajax下拉列表,可以从数据库生成值。我可以选择值,但由于某种原因,我似乎无法将所选值实际传递给另一个变量或只是将值传递给空文本框。下面是我的ajax电话。如何将选定的值传递回HTML?我已经完成了request.getParameter,但它又回来了。由于某种原因,它只是没有保持选定的值。

function listSess(){
  var name = document.getElementById("studentID").value;

  $.ajax({
        url : "<%=context%>/ListSessionsServlet?name=" + name,
        type : "POST",
        async : false,
        dataType: "json",
          success : function(data) {
              var toAppend = '';
              $.each(data,function(i,o){

                  toAppend += '<option>'+o.sessid+'</option>';
                 });

            $('#sessid')
                .find('option')
                .remove()
                .end()
                .append(toAppend);

          }  
    });
}  

2 个答案:

答案 0 :(得分:0)

标签选项应设置值属性。

 $.each(data,function(i,o){
     toAppend += '<option value="'+o.sessid+'">'+o.sessid+'</option>';
  });

答案 1 :(得分:0)

It is better to debug the data object. If it is the normal object with property names and property values then it might work.

function listSess(){
  var name = document.getElementById("studentID").value;

  $.ajax({
        url : "<%=context%>/ListSessionsServlet?name=" + name,
        type : "POST",
        async : false,
        dataType: "json",
          success : function(data) {
              var toAppend = '';
              $.each(data,function(i,o){

                  toAppend += '<option value="'+o+'">'+i+'</option>';
                 });

            $('#sessid')
                .find('option')
                .remove()
                .end()
                .append(toAppend);

          }  
    });
}