通过ajax方式从后台查询出数据并填入前台的select中

来源:互联网 发布:网络乌拉是什么意思 编辑:程序博客网 时间:2024/05/06 09:10

首先需要清空之前下拉框中的内容,否则会出现选项重复的情况,根据url的路径查询出select中所要展示的list,判断list是否为空,如为空,需要置入空行,如不为空,用jquery取到select后将整个list用append的方式置入,代码如下,附抽出的ajax提交方法

$("#name_send").empty();
    var url = context + "/customer/publish.ao?method=processQueryMsgTemplate&nodeId=" + nodeId
      + "&d=" + new Date().getTime();
    var list = ajaxRequest(url);
    content = "<option value='0' ></option>";
    if (list == null || list == "") {
     $("#name_send").append(content);
    } else {
     $(list).each(function() {
      content += "<option value='" + this.id + "' >" + this.name + "</option>";
     });
     $("#name_send").append(content);
    }

 

 

function ajaxRequest(url) {
 url += "&date=" + new Date().toLocaleString();
 var isFault = false;
 var jsonStr = $.ajax({
  url : url,
  type : 'POST', // 默认值: "GET"。请求方式 ("POST" 或 "GET"), 默认为 "GET"
  async : false, // 默认值: true。默认设置下,所有请求均为异步请求
  dataType : 'json', // 预期服务器返回的数据类型
  success : function(json) {
   if (json && json.state) {
    showJsonMessage(json);
   }
  },
  error : function(json) {// 请求失败时调用此函数。
   showMessage("系统出现异常,请与管理员联系!", "error");
   isFault = true;
  }
 }).responseText;
 if (!isFault) {
  var json = eval('(' + jsonStr + ')');
  if (json) {
   // 如果json中存在消息状态标识则提示消息并返回true、false
   if (json.state) {
    return showMessageState(json.state);
    // 否则为数据json,直接返回
   } else {
    return json;
   }
  }
 }
 return null;
}

原创粉丝点击