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

shenlong0125 2011-04-18 01:41:25
引用了相关Jquery的包.前台代码为:
<body>
<div id="box1" class="ddcombo">
</div>
</body>


Js中的代码为:

$(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'];数据,改成与数据库交互,但不知道怎么处理,请求帮助。
...全文
2465 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
SimpleDay 2011-04-20
  • 打赏
  • 举报
回复
1、后台读出来写到HIDDEN里面去。,然后JS读
2、或是直接把整个JS从后台输出
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
悲剧了,艰难的奋斗中。。。。。。
toury 2011-04-18
  • 打赏
  • 举报
回复

/*第二个下拉框的值*/
$(document).ready(function(){

//////var drops = ['a', 'b', 'ab', 'bcv', 'd', 'ddd', 'de', 'fw', 'fa', 'qq', 'qc', 'qca'];
//////////////////////////////////////////////////////////////////////////
var drops=null;
$.get("Ashx/Scheduling.ashx",function(data){
drops=eval(data) //这个data 就是AJAX返回的数据
});
///////////////////////////////////////////////////////////////////////////////////////////
$(".dropcomb").dropcomb({
minChars: 0,
options: drops
}
);
});
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
我是参考http://www.open-open.com/ajax/ajax20081010142356.htm这个网站上的。

现在这个是,页面加载的时候就直接显示数据了,


/*第二个下拉框的值*/
$(document).ready(function(){

var drops = ['a', 'b', 'ab', 'bcv', 'd', 'ddd', 'de', 'fw', 'fa', 'qq', 'qc', 'qca'];

$(".dropcomb").dropcomb({
minChars: 0,
options: drops
}
);
});

就是想将drops这个变量里的值,都变成动态的,直接读数据库中的信息,首次加载,不进行提交。哪来的,get 或post的呢。请求帮助啊。。。。
toury 2011-04-18
  • 打赏
  • 举报
回复
【总是执行error的这个函数】那是后台出错了,返回了错误。不是没执行。
【json必须进行,post或get吗?】不是啊,那是JQUERY AJAX的函数,它有几种:
$.get()
$.post()
$.ajax()
$.getJSON()

你如果不知道怎么用,查查手册或别人的实例即可,没那么复杂。主要是你太着急了,呵呵
最简单的get:
$.get("Ashx/Scheduling.ashx",function(data){
alert(data)//这个data 就是AJAX返回的数据
})
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
json必须进行,post或get吗?怎么样能够让他,页面初始的时候,到Scheduling.ashx查询,并执行成功,我现在是没进行提交,总是执行error的这个函数
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
怎么将Scheduling.ashx文件查询出的,DataTable传给js中的值呢,json或data.
jackysun0000 2011-04-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 shenlong0125 的回复:]
现在主要是,我这个Json函数,根本就无法进入这个Ashx/Scheduling.ashx应用程序,很是郁闷,$.getJSON函数还用引其他的JS吗?
[/Quote]

那这个应该是你的URL有问题,不然不会到不了Ashx/Scheduling.ashx
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
已经晕了,用的是ASP.Net的。但总是跳转不进去
toury 2011-04-18
  • 打赏
  • 举报
回复
别晕。
重新做两个简单页面:一个是后台,一个前台。
后台什么都没有,只有编码、连库读库、循环写字串。
前台也只有编码声明、JQUERY引用;放个按钮,点击就去$.get(url,data,callback,type)到后台把八个字串取回来;

后台用什么语言?
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
请问有没有一个例子,我现在都已经看晕了,不知道从哪下手了。
toury 2011-04-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 shenlong0125 的回复:]

现在主要是,我这个Json函数,根本就无法进入这个Ashx/Scheduling.ashx应用程序,很是郁闷,$.getJSON函数还用引其他的JS吗?
[/Quote]
1、后台:连库读库,生成JSON格式的字符串;
2、前台,使用$.get()将字串取回来,eval()一下就变成JSON格式了
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
现在主要是,我这个Json函数,根本就无法进入这个Ashx/Scheduling.ashx应用程序,很是郁闷,$.getJSON函数还用引其他的JS吗?
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[i].name,json[i].age化成data[i].name,data[i].age

还要注意,将数据转化成Json时,与data[i].name,data[i].age的对应关系
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
是的,但是我想通过JQuery的 $.getJSON()查询,但加断点,总是得不到值

$(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+"  Age:"+json[i].age+"</li>")
})
});
});
Go 旅城通票 2011-04-18
  • 打赏
  • 举报
回复
autocomplete功能??

你这个得查看这个plugin的API文档了,找到远程数据源配置选项的。
shenlong0125 2011-04-18
  • 打赏
  • 举报
回复
有人知道吗?

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧