众果搜的博客

脚踏大地,仰望星空,致力于在线网络工具的开发与普及,以及其他思考

Search(博客搜索)

热文排行

最近发表

最新评论及回复

« visual studio 2008中的jQuery自动感知问题解决Google地图之jQuery插件jmaps使用 »

jQuery与Asp.net结合编写网页

 准备翻译自国外的一篇比较好的,介绍如何结合Asp.net和JQuery进行网页编写的文章。这里先暂时进行记录,随后翻译。后面为jQuery实际操作总结。

编程过程需要随时参考的jQuery网站:http://docs.jquery.com






 

选择符

实例

描述

Element

$("td")

选择一个HTML标记

#id

$("#divMessage")

选择一个元素通过它的id

.cssclass

$(".gridalternate")

选择一个CSS样式

selector,selector

$("input:button,input:text")

以多个逗号分隔的选择符可以混为一个单一的选择.

ancestor descendant

$("#divMessage a")

A space between selectors/elements/tags finds nested elements. This syntax is similar to Css ancestor descendant syntax.

parent > child
> child

$("p > b")

Matches all immediate children of an element or selector expression that match the right element/selector.

prev ~ siblings
~ siblings

$("#row_11:nth-child(2)~td")
$("~td")

Matches the next siblings at the sample level as the preceeding expression. Example, matches 3-nth columns of a table row. Best used as a find() or filter() against an existing jQuery instance.

prev + nextsibling

+ nextsibling

$("#tdMoneyCol+td")
$("+td")

Matches the following sibling. Works best with find() or filter() against an existing jQuery object.

:filter

$("input:button")

: applies filters to the query. jQuery support CSS 3 filters plus a number of custom filters.

Examples: :not,:button,:visible,:hidden,:checked,:first,nth-child(1),:has,:is,:contains,:parent

[@attribute]

$("p[class=gridalternate]

选择一个元素的属性:
= 等于字符串
^= 以此为开始符

$= 以此为结束符

*= 包含

 

在jQuery中使用asp.net生成的XML文件一定要注意以下问题,看看示例代码部分,其中的加粗部分是必须的,其他的你可以在后台的Asp.net页面中生成,然后Response.Write方法返回:

 

$.ajax({      
url:'ajax.aspx',      
type:'post',       
dataType: 'xml',        
data:'text='+$("#name").val()+'&date=1982-9-3',   //要传递的数据      
timeout: 2000,     //设置本地超时 .( 毫秒)      
error: function(){          alert('Error loading XML document');      },      
success: function(xml){           
$(xml).find("student").each(function(){          
 var item_text = $(this).text();           // alert($("name" , xml).text());   //选择器注意下   写法           $('<li></li>').html(item_text).appendTo('ol');         });      } });
 
body: 程序代码 
<form id="form1"> name:<input type="text" value="f9inux" id="name">
<br>      
<input type="button" value="save" id="save"> </form> 
<br> 
返回xml: <ol></ol> 
ajax.aspx: string text=Request.Form["name"].ToString(); //获取传来的参数 
Response.ContentType="text/xml";   //注意,由于你是以xml形式传递过来的,所以这里必须写。 
Response.Write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); 
Response.Write("<student>"); 
Response.Write("<name>"+text+"</name>"); 
Response.Write("</student>"); Response.End();
 
可以在asp.net中如此生成:
 string info = "<?xml version='1.0' encoding='UTF-8'?><entries>";
        int i = 1;
        cmd = new System.Data.SqlClient.SqlCommand(locationStr, conPubs);
        System.Data.SqlClient.SqlDataReader reader;
        reader = cmd.ExecuteReader();
        if (reader.HasRows)
        {
            while (reader.Read())
            {
                //查询结果的统计显示和单个的显示
                // lbResult.Text += reader["location"].ToString();
                locId = int.Parse(reader["id"].ToString());
                //对每个代售点创建地图地标信息,根据查询结果创建,有多少,创建多少
                //首先查询数据库中是否存在该地点的经纬度,如果存在那么使用经纬度显示,否则重新生成经纬度
                if (int.Parse(reader["already"].ToString()) > 0)
                {
                    info += "<entry>";
                    info+="<name>" + reader["name"].ToString() + "</name>";
                    info+="<address>"+reader["address"].ToString() + "</address>";
                    if (reader["telephone"] is DBNull)
                        info += "<telephone>" + " " + "</telephone>";
                    else
                        info += "<telephone>" + reader["telephone"].ToString() + "</telephone>";
                    info += "<latitude>" + reader["latitude"].ToString() + "</latitude>";
                    info += "<longtitude>" + reader["longtitude"].ToString() + "</longtitude>";
                    info += "</entry>";
                    i += 1;
                    
                }               
                }
            }
        info += "</entries>";
         Response.ContentType = "text/xml";
        Response.Write(info);
    }

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-Blog 1.8 Spirit Build 80722 Code detection by Codefense

Copyright www.zhongguosou.com. Some Rights Reserved.