>  기사  >  웹 프론트엔드  >  오늘은 jquery와 ajax_jquery에 대한 관련 지식을 정리하는 시간을 갖도록 하겠습니다.

오늘은 jquery와 ajax_jquery에 대한 관련 지식을 정리하는 시간을 갖도록 하겠습니다.

WBOY
WBOY원래의
2016-05-16 15:31:561087검색

안녕하세요 오늘은 화요일인데 어떡하지? 지난 이틀 동안 ajax 관련 지식을 배웠던 기억이 나네요. 오늘도 jquery와 ajax 관련 지식을 배워보겠습니다.

1. jQuery

------jQuery 및 AJAX------

AJAX는 "Asynchronous Javascript And XML"의 약자로 대화형 웹 애플리케이션을 만들기 위한 웹 개발 기술을 의미합니다.

AJAX = 비동기 JavaScript 및 XML(표준 범용 마크업 언어의 하위 집합).

AJAX는 빠르고 동적인 웹페이지를 만드는 기술입니다.

AJAX를 사용하면 백그라운드에서 서버와 소량의 데이터를 교환하여 웹페이지를 비동기적으로 업데이트할 수 있습니다. 이는 전체 페이지를 다시 로드하지 않고도 웹페이지의 일부를 업데이트할 수 있음을 의미합니다.

AJAX를 사용하지 않는 기존 웹페이지에서는 콘텐츠를 업데이트해야 하는 경우 전체 웹페이지를 다시 로드해야 합니다.

관련 자료: JQuery Framework 사용법 튜토리얼 AJAX AJAX 기본 튜토리얼: AJAX의 첫 이해

----load() 메소드를 사용하여 비동기식으로 데이터 요청

load() 메서드를 사용하여 Ajax 요청을 통해 서버에서 데이터를 로드하고 반환된 데이터를 지정된 요소에 배치합니다.

로드(URL,[데이터],[콜백])

url 매개변수는 로딩 서버의 주소, 선택적 data 매개변수는 요청 시 전송되는 데이터, callback 매개변수는 데이터 요청 성공 후 실행되는 콜백 함수입니다.

<body>
<div id="divtest">
<div class="title">
<span class="fl">我最爱吃的水果</span> 
<span class="fr">
<input id="btnShow" type="button" value="加载" />
</span>
</div>
<ul></ul>
</div>
<script type="text/javascript">
$(function () {
$("#btnShow").bind("click", function () {
var $this = $(this);
$("ul")
.html("<img src='Images/Loading.gif' alt=''/>")
.load("http://www.imooc.com/data/fruit_part.html",function(){
$this.attr("disabled", "true");
});
})
});
</script>
</body>

load()를 사용할 때 요소는 공백에 민감합니다. 예를 들어 URL의 시작과 끝에 공백이 없어야 합니다. 예를 들어 function() 뒤에는 공백이 없어야 합니다. .

----JSON 형식 데이터를 비동기적으로 로드하려면 getJSON() 메서드를 사용하세요

Ajax 비동기 요청을 통해 서버에서 배열을 가져오고 가져온 데이터를 구문 분석하고 페이지에 표시하려면 getJSON() 메서드를 사용하세요.

jQuery.getJSON(url,[data],[콜백]) 또는 $.getJSON(url,[data],[callback])

그 중 url 매개변수는 json 형식의 파일을 로드하기 위한 요청의 서버 주소, 선택적 data 매개변수는 요청 시 전송되는 데이터, callback 매개변수는 데이터 요청 성공 후 실행되는 콜백 함수입니다. .

<body>
<div id="divtest">
<div class="title">
<span class="fl">我最喜欢的一项运动</span> 
<span class="fr">
<input id="btnShow" type="button" value="加载" />
</span>
</div>
<ul></ul>
</div>
<script type="text/javascript">
$(function () {
$("#btnShow").bind("click", function () {
var $this = $(this);
$.getJSON("http://www.imooc.com/data/sport.json",function(data){
$this.attr("disabled", "true");
$.each(data, function (index, sport) {
if(index==3)
$("ul").append("<li>" + sport["name"] + "</li>");
});
});
})
});
</script>
</body>

----getScript() 메소드를 사용하여 js 파일을 비동기적으로 로드하고 실행합니다.

서버에서 JavaScript 형식의 파일을 비동기적으로 요청하고 실행하려면 getScript() 메서드를 사용하세요.

jQuery.getScript(url,[콜백]) 또는 $.getScript(url,[콜백])

url 매개변수는 서버 요청 주소이고, 선택적 callback 매개변수는 요청 성공 후 실행되는 콜백 함수입니다.

<body>
<div id="divtest">
<div class="title">
<span class="fl">我最喜欢的运动</span> 
<span class="fr">
<input id="btnShow" type="button" value="加载" />
</span>
</div>
<ul></ul>
</div>
<script type="text/javascript">
$(function () {
$("#btnShow").bind("click", function () {
var $this = $(this);
$.getScript("http://www.imooc.com/data/sport_f.js",function(){
$this.attr("disabled", "true");
});
})
});
</script>
</body>

----GET 모드에서 서버로부터 데이터를 얻으려면 get() 메서드를 사용하세요.

get() 메소드를 사용할 때 GET 메소드를 사용하여 서버에 데이터를 요청하며, 요청된 데이터는 해당 메소드의 콜백 함수의 매개변수를 통해 반환됩니다.

$.get(url,[콜백])

url 매개변수는 서버 요청 주소이고, 선택적 callback 매개변수는 요청 성공 후 실행되는 콜백 함수입니다.

<body>
<div id="divtest">
<div class="title">
<span class="fl">我的个人资料</span> 
<span class="fr">
<input id="btnShow" type="button" value="加载" />
</span>
</div>
<ul></ul>
</div>
<script type="text/javascript">
$(function () {
$("#btnShow").bind("click", function () {
var $this = $(this);
$.get("http://www.imooc.com/data/info_f.php",function(data){
$this.attr("disabled", "true");
$("ul").append("<li>我的名字叫:" + data.name + "</li>");
$("ul").append("<li>男朋友对我说:" + data.say + "</li>");
}, "json");
})
});
</script>
</body>

----post() 메소드를 사용하여 서버에서 데이터를 POST하세요

get() 메소드에 비해 post() 메소드는 POST 모드로 서버에 데이터를 전송하는 데 주로 사용됩니다. 서버는 데이터를 수신한 후 이를 처리하고 처리 결과를 페이지에 반환합니다. 형식은 다음과 같습니다.

$.post(url,[데이터],[콜백])

url 매개변수는 서버 요청 주소, 선택적 data는 서버에 요청할 때 전송되는 데이터, 선택적 callback 매개변수는 요청 성공 후 실행되는 콜백 함수입니다.

<body>
<div id="divtest">
<div class="title">
<span class="fl">检测数字是否大于0</span> 
<span class="fr"><input id="btnCheck" type="button" value="检测" /></span>
</div>
<ul>
<li>请求输入一个数字 <input id="txtNumber" type="text" size="12" /></li>
</ul>
</div>
<script type="text/javascript">
$(function () {
$("#btnCheck").bind("click", function () {
$.post("http://www.imooc.com/data/check_f.php",{
num:$("#txtNumber").val()
},
function (data) {
$("ul").append("<li>你输入的<b> "
+ $("#txtNumber").val() + " </b>是<b> "
+ data + " </b></li>");
});
})
});
</script>
</body>

여기서 val()은 jQuery의 함수인 이전 선택자의 값을 가져오기 위한 것입니다

----serialize() 메서드를 사용하여 양식 요소 값을 직렬화합니다

serialize() 메소드를 사용하여 양식의 name 속성으로 요소 값을 직렬화하고 Ajax 요청에 직접 사용할 수 있는 표준 URL 인코딩 텍스트 문자열을 생성합니다.

$(selector).serialize()

선택기 매개변수는 양식에 있는 하나 이상의 요소 또는 양식 요소 자체입니다.

<body>
<div id="divtest">
<div class="title">
<span class="fl">我的个人资料</span> 
<span class="fr">
<input id="btnAction" type="button" value="序列化" />
</span>
</div>
<form action="">
<ul>
<li>姓名:<input name="Text1" type="text" size="12" /></li>
<li>
<select name="Select1">
<option value="0">男</option>
<option value="1">女</option>
</select>
</li>
<li><input name="Checkbox1" type="checkbox" />资料是否可见 </li>
<li id="litest"></li>
</ul>
</form>
</div>
<script type="text/javascript">
$(function () {
$("#btnAction").bind("click", function () {
$("#litest").html($("form").serialize());
})
})
</script>
</body>

----ajax() 메소드를 사용하여 서버 데이터 로드

ajax() 메소드를 사용하는 것은 서버 데이터를 요청하는 가장 낮고 강력한 방법입니다. 서버에서 반환된 데이터를 얻을 수 있을 뿐만 아니라 서버에 요청을 보내고 값을 전달합니다. :

jQuery.ajax([설정]) 또는 $.ajax([설정])

매개변수 설정은 ajax 요청을 보낼 때의 구성 개체입니다. 이 개체에서 url은 서버가 요청한 경로를 나타내고, data는 요청 중에 전달된 데이터, dataType은 서버가 반환한 데이터 유형, 성공을 나타냅니다. 콜백 함수의 성공적인 실행, 유형은 데이터 요청 전송 방법, 기본값은 가져오기입니다.

<body>
<div id="divtest">
<div class="title">
<span class="fl">检测数字的奇偶性</span> 
<span class="fr">
<input id="btnCheck" type="button" value="检测" />
</span>
</div>
<ul>
<li>请求输入一个数字 
<input id="txtNumber" type="text" size="12" />
</li>
</ul>
</div>
<script type="text/javascript">
$(function () {
$("#btnCheck").bind("click", function () {
$.ajax({
url:"http://www.imooc.com/data/check.php",
data: { num: $("#txtNumber").val() },
type:"post",
success: function (data) {
$("ul").append("<li>你输入的<b> "
+ $("#txtNumber").val() + " </b>是<b> "
+ data + " </b></li>");
}
});
})
});
</script>
</body>

----使用ajaxSetup()方法设置全局Ajax默认选项

使用ajaxSetup()方法可以设置Ajax请求的一些全局性选项值,设置完成后,后面的Ajax请求将不需要再添加这些选项值,它的调用格式为:

jQuery.ajaxSetup([options])或$.ajaxSetup([options])

可选项options参数为一个对象,通过该对象设置Ajax请求时的全局选项值。

<body>
<div id="divtest">
<div class="title">
<span class="fl">奇偶性和是否大于0</span> 
<span class="fr">
<input id="btnShow_1" type="button" value="验证1" />
<input id="btnShow_2" type="button" value="验证2" />
</span>
</div>
<ul>
<li>请求输入一个数字 
<input id="txtNumber" type="text" size="12" />
</li>
</ul>
</div>
<script type="text/javascript">
$(function () {
$.ajaxSetup({
url:"http://www.imooc.com/data/check.php",
data: { num: $("#txtNumber").val() },
type:"post",
success:function(data){$("ul").append("<li>你输入的<b> "
+ $("#txtNumber").val() + " </b>是<b> "
+ data + " </b></li>");
}
});
$("#btnShow_1").bind("click", function () {
$.ajax({
data: { num: $("#txtNumber").val() },
url: "http://www.imooc.com/data/check.php"
});
})
$("#btnShow_2").bind("click", function () {
$.ajax({
data: { num: $("#txtNumber").val() },
url: "http://www.imooc.com/data/check_f.php"
});
})
});
</script>
</body>

----使用ajaxStart()和ajaxStop()方法

ajaxStart()和ajaxStop()方法是绑定Ajax事件。ajaxStart()方法用于在Ajax请求发出前触发函数,ajaxStop()方法用于在Ajax请求完成后触发函数。它们的调用格式为:

$(selector).ajaxStart(function())和$(selector).ajaxStop(function())

其中,两个方法中括号都是绑定的函数,当发送Ajax请求前执行ajaxStart()方法绑定的函数,请求成功后,执行ajaxStop ()方法绑定的函数。

<body>
<div id="divtest">
<div class="title">
<span class="fl">加载一段文字</span> 
<span class="fr">
<input id="btnShow" type="button" value="加载" />
</span>
</div>
<ul>
<li id="divload"></li>
</ul>
</div>
<script type="text/javascript">
$(function () {
$("#divtest").ajaxStart(function(){
$(this).html("正在请求数据...");
});
$("#divtest").ajaxStop(function(){
$(this).html("数据请求完成!");
});
$("#btnShow").bind("click", function () {
var $this = $(this);
$.ajax({
url: "http://www.imooc.com/data/info_f.php",
dataType: "json",
success: function (data) {
$this.attr("disabled", "true");
$("ul").append("<li>我的名字叫:" + data.name + "</li>");
$("ul").append("<li>男朋友对我说:" + data.say + "</li>");
}
});
})
});
</script>
</body>

-----jQuery常用插件-----

 ----表单验证插件——validate

该插件自带包含必填、数字、URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下:

$(form).validate({options})

其中form参数表示表单元素名称,options参数表示调用方法时的配置对象,所有的验证规则和异常信息显示的位置都在该对象中进行设置。

<body>
<form id="frmV" method="get" action="#">
<div id="divtest">
<div class="title">
<span class="fl">表单验证插件</span> 
<span class="fr">
<input id="btnSubmit" type="submit" value="提交" />
</span>
</div>
<div class="content">
<span class="fl">邮箱:</span><br />
<input id="email" name="email" type="text" /><br />
<span class="tip"></span>
</div>
</div>
</form>
<script type="text/javascript">
$(function () {
$("#frmV").validate(
{
/*自定义验证规则*/
rules: {
email:{
required:true,
email:true
}
}
},
/*错误提示位置*/
errorPlacement: function (error, element) {
error.appendTo(".tip");
}
}
);
});
</script>
</body>
</html>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.