+ -
当前位置:首页 → 问答吧 → JQuery Ajax与数据库交互(实现下拉框赋值)

JQuery Ajax与数据库交互(实现下拉框赋值)

时间:2011-04-18

来源:互联网

引用了相关Jquery的包.前台代码为:
HTML code
<body>
    <div id="box1" class="ddcombo">
    </div>   
</body>


Js中的代码为:
JScript code

$(document).ready(function(){ 
  var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];

  $(".ddcombo").ddcombo({
    minChars: 0,
    options: months
  }
  );

});



现在是想将 Js中的
var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];数据,改成与数据库交互,但不知道怎么处理,请求帮助。

作者: shenlong0125   发布时间: 2011-04-18

有人知道吗?

作者: shenlong0125   发布时间: 2011-04-18

autocomplete功能??

你这个得查看这个plugin的API文档了,找到远程数据源配置选项的。

作者: showbo   发布时间: 2011-04-18

是的,但是我想通过JQuery的 $.getJSON()查询,但加断点,总是得不到值
JScript code

$(document).ready(function(){

    $.getJSON(
    "Ashx/Scheduling.ashx",//产生JSON数据的服务端页面
    //对返回的JSON数据进行处理,本例以列表的形式呈现
    function(data){
    //循环取json中的数据,并呈现在列表中
    //    debugger;
    $.each(data,function(i){
    $(".cat-list").append("<li>name:"+json[i].name+"&nbsp; Age:"+json[i].age+"</li>")    
    })
    });
    });

作者: shenlong0125   发布时间: 2011-04-18

可将json[i].name,json[i].age化成data[i].name,data[i].age

还要注意,将数据转化成Json时,与data[i].name,data[i].age的对应关系

作者: jackysun0000   发布时间: 2011-04-18

看下这个
 一)JQuery代码
 $(document).ready(function()
  {
  $.getJSON(
   
  "WebForm3.aspx",
   
  function(data)
  {
  $('#s').append("<option value='0' selected='true'>请选择</option>");
  $.each(data,function(i)
  {
  $('#s').append("<option value="+data[i].CustomerCode+">"+data[i].CustomerName+"</option>");
  }
  );
  }
  );
  }
  );

二)aspx页面

<body>
  <form id="form1" runat="server">
  <select id="s" ></select>
   
  </form>
</body>

三)cs页面
 protected void Page_Load(object sender, EventArgs e)
  {
  uf_Init();
  }
  protected void uf_Init()
  {
  SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["mycon"].ConnectionString.ToString());
  con.Open();
  SqlDataAdapter da = new SqlDataAdapter("select CustomerCode,CustomerName from customer ", con);
  DataTable dt = new DataTable();
  da.Fill(dt);
  da.Dispose();
  con.Close();
  Response.Clear();
  string str = DataTableToJson("MyJson", dt);
  Response.Write(str);
  Response.End();
  }
  public string DataTableToJson(string jsonName, DataTable dt)
  {
  StringBuilder jsonBuilder = new StringBuilder();
  jsonBuilder.Append("[");
  for (int i = 0; i < dt.Rows.Count; i++)
  {
  jsonBuilder.Append("{");
  for (int j = 0; j < dt.Columns.Count; j++)
  {
  jsonBuilder.Append("\"");
  jsonBuilder.Append(dt.Columns[j].ColumnName);
  jsonBuilder.Append("\":\"");
  jsonBuilder.Append(dt.Rows[i][j].ToString());
  jsonBuilder.Append("\",");
  }
  jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
  jsonBuilder.Append("},");
  }
  jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
  jsonBuilder.Append("]");
  return jsonBuilder.ToString();
}
   

作者: jackysun0000   发布时间: 2011-04-18

现在主要是,我这个Json函数,根本就无法进入这个Ashx/Scheduling.ashx应用程序,很是郁闷,$.getJSON函数还用引其他的JS吗?

作者: shenlong0125   发布时间: 2011-04-18

引用 6 楼 shenlong0125 的回复:

现在主要是,我这个Json函数,根本就无法进入这个Ashx/Scheduling.ashx应用程序,很是郁闷,$.getJSON函数还用引其他的JS吗?

1、后台:连库读库,生成JSON格式的字符串;
2、前台,使用$.get()将字串取回来,eval()一下就变成JSON格式了

作者: toury   发布时间: 2011-04-18

请问有没有一个例子,我现在都已经看晕了,不知道从哪下手了。

作者: shenlong0125   发布时间: 2011-04-18

别晕。
重新做两个简单页面:一个是后台,一个前台。
后台什么都没有,只有编码、连库读库、循环写字串。
前台也只有编码声明、JQUERY引用;放个按钮,点击就去$.get(url,data,callback,type)到后台把八个字串取回来;

后台用什么语言?

作者: toury   发布时间: 2011-04-18

已经晕了,用的是ASP.Net的。但总是跳转不进去

作者: shenlong0125   发布时间: 2011-04-18

引用 6 楼 shenlong0125 的回复:
现在主要是,我这个Json函数,根本就无法进入这个Ashx/Scheduling.ashx应用程序,很是郁闷,$.getJSON函数还用引其他的JS吗?


那这个应该是你的URL有问题,不然不会到不了Ashx/Scheduling.ashx

作者: jackysun0000   发布时间: 2011-04-18

怎么将Scheduling.ashx文件查询出的,DataTable传给js中的值呢,json或data.

作者: shenlong0125   发布时间: 2011-04-18