源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

jQuery通过控制节点实现仅在前台通过get方法完成参数传递

  • 时间:2022-10-22 08:53 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:jQuery通过控制节点实现仅在前台通过get方法完成参数传递
本文实例讲述了jQuery通过控制节点实现仅在前台通过get方法完成参数传递。分享给大家供大家参考。具体分析如下: 这样也是HTML DOM那部分的内容,javascript与jquery等前端脚本语言的核心就是要控制每一个节点,对每一个节点进行增删改查,这样才能够真正地活用javascript与jquery等前端脚本写出一个又一个华丽丽的东西。 javascript控制节点,笔者已经在之前的【[url=http://www.1sucai.cn/article/60672.htm]JavaScript针对网页节点的增删改查用法实例[/url]】有过相关介绍,现在是通过jquery这一javascript进阶的脚本语言,来控制节点,并且在此基础上,使用jquery来在不同网页间传递参数,仅在前台通过get方法完成参数传递,挂到服务器,不需要jsp与asp,写一些request等服务器语言来获取参数。 [b]一、基本目标[/b] 在网页中有存在于黑色div-红色div-蓝色p之下的span节点,一旦点击,则分别获取其上面节点的id [img]http://files.jb51.net/file_images/article/201502/201522145001094.gif?201512145136[/img] 点击增加按钮可以增加超级链接节点,其中每一个超级链接都带有中文参数你好1,你好2,你好3……,而且滚动条自动随节点的增加而滚动,向jqrec.html传递,这个你好x参数,jqrec.html页面能够获取到这个中文参数 [img]http://files.jb51.net/file_images/article/201502/201522145009434.gif?201512145124[/img] [img]http://files.jb51.net/file_images/article/201502/201522145016412.png?201512145112[/img] 点击清空按钮可以清空ul下面的所有节点 [img]http://files.jb51.net/file_images/article/201502/201522145024801.gif?201512145056[/img] [b]二、制作过程[/b] jqrec.html全代码如下,所使用的函数,涉及到分析url地址的正则表达式,不用细究。真正作用的代码则只有,$("#rec").text(unescape(getUrlParam("text")));
[url=./jqsend.html] </p>  </body>  </html>  <script>  /*此函数配合unescape函数能够对url上get方法传递过来的utf-8元素进行解码*/  function getUrlParam(name)  {  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");   var r = window.location.search.substr(1).match(reg);    if (r!=null) return unescape(r[2]); return null;   }   $(function() {      $("#rec").text(unescape(getUrlParam("text")));      });  </script>
jqsend.html全代码如下,具体代码请看注释:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  <html xmlns="http://www.w3.org/1999/xhtml">  <head>  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  <title>jqsend</title>  <script src="js/jquery-1.11.1.js"></script>  </head>    <!--html部分,设计一个复杂的图层,里面包含着四重节点,也就是节点树四层-->  <body>    <div id="fatherdiv2" style="border:solid;border-color:#000">  <div id="fatherdiv" style="border:solid;border-color:#f00">  <p id="fatherp" style="border:solid;border-color:#00f">  <span id="findmyfather">  我的父节点  </span>  </p>  </div>  </div>  <br />    <!--两个按钮-->  <button id="add">增加</button>  <button id="clear">清空</button>  <!--用来存放增加的超链接列表-->  <ul id="testul"></ul>  </body>  </html>  <script>  /*$(function(){});相当于$(document).ready(function (){});函数,一载入,就执行的主函数*/  $(function() {       /*计数id*/       var id=0;       /*add按钮点击事件*/       $("#add").click(function (){              id=id+1;              var li="<li id=\"id" +id.toString()+ "\"><a></a></li>";              /*在testul列表中,增加如上所述的li节点*/              $("#testul").append(li);              /*寻找新增的id为idx(其中x为计数器var id的值)的li节点下的a节点,并且把其中的元素修改为你好x,jquery里面的.html相当于javascript里面的innerHTML*/              $("#id"+id.toString()).find("a").html("你好"+id);              /*设置此a元素的href属性为,jqrec.html=“你好”+id,由于链接中不可以带中文,所以用两次escape将其编码为utf-8编码,用一次会出现bug,后面的unescape获取不了,不知道为什么*/              $("#id"+id.toString()).find("a").attr("href","./jqrec.html?text="+escape(escape("你好"+id)));              /*设置滚动条随着testul的所在高度滚动,这段代码在ie8以下会失效*/              $("body").scrollTop($("#testul").height());           });       /*clear按钮点击事件*/        $("#clear").click(function (){              /*把testul下面的所有元素清空,计数器清零*/               $("#testul").empty();              id=0;          });       /*findmyfather行内文本点击事件*/       $("#findmyfather").click(function(){           /*this代表被按的findmyfather,取其上一级父节点的id*/           thisid=$(this).parents().attr("id");           alert("我的父节点是:"+thisid);           /*这样可以往前寻找第一个div元素的id*/           thisid=$(this).parents("div").attr("id");           alert("我的第一个div父节点是:"+thisid);           /*这样可以往前寻找第二个div元素的id*/           thisid=$(this).parents("div").parents("div").attr("id");           alert("我的第二个div父节点是:"+thisid);           });              });  </script>
希望本文所述对大家的jQuery程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部