JQuery与JQuery EasyUI部分基础内容总结打赏

JQuery总结部分
1、在<script>中,如果是需要页面打开就要载入的部分,需要先写

$(function(){
});

然后把需要变成EasyUI的input或div等的ID写入其中,否则他们不能变成你想要的插件。当然,其他的函数,如onclick(),就要写到其外了。

2、$.get()
$.get()是简化的$.ajax()。用法如

$("button").click(function(){
$.get("demo_ajax_load.txt", function(result){
$("div").html(result);
});
});


这里有2个知识点:
a、如果要得到服务器返回的值,就必须用后面加函数的方法。原因是:它是异步调用,JS会在它没有得到远程服务器的值之前,就往下执行了,会导致下面的值并不是你想要的。比如:

var str="";
$.get("index/serTime",function(data){str=data;});
alert(str);

你会发现最后的str并不是从服务器中取回来的结果。因为在服务器还未得到值之前,就已经alert了。但是如果你第二次执行这个语句的话,就会得到上次从服务器返回的内容。
解决这个问题可以以如下方式改写:

$.get("index/serTime",function(data){alert(data);});

或者,也可以使用下面的办法。
b、用$.ajax代替简化版的$.get
$.get 相当于:

$.ajax({
url: url,
data: data,
success: success,
dataType: dataType
});

$.get传输参数的用法:

$.get("test.php", { name: "John", time: "2pm" } );

$.ajax的用法:

$("#ButAjax").click(function() {
$.ajax({
type: "POST", //默认是GET
url: "/Test/getPerson",
data: "ID=1&FirstName=C&LastName=HY",
async: true, //异步
cache: false, //不加载缓存
success: function(obj) {
alert(obj.ID + obj.FirstName + obj.LastName + obj.Man);
},
error: function() {
alert("请求失败");
}
});
});

可见,$.get和$.ajax,默认都是异步调用的。所以如果想让JS语句在本句执行完之后,再执行下一条语句,可以把async设为false,即不要异步调用。所以,同样的:

var str="";
$.ajax({url:"index/serTime",async:false,success:function(data){str=data;});
alert(str);

这样,其结果就是你想要的了。就是说,如果以后在页面处于打开的状态下,再点击按钮,想要给什么控件赋值的话,就要把async改为false。

3、javascript:void(0)与javascript:;的意思
在<a>标签中,废除原来的链接,而使用JS函数的方法有3种。
a、<a href="#" onclick="myclick()">链接</a>,这种方式一般不建议使用,因为会在地址栏出现#或导致其他影响用户体验的问题。
b、<a href="javascript:void(0)" id="a1">链接</a>,这种方式在js脚本中设置其点击事件即可

$(function(){
$("#a1").click(function(){alert("链接a1");});
});

c、<a href="javascript:;" id="a2">链接</a>,这种方式类似于上一种,同样在js脚本中设置其点击事件即可,但目前来讲用这个的比较多,据说是第二种虽然没有返回值但还是执行了,这样写的话就不执行任何代码。

$(function(){
$("#a2").click(function(){alert("链接a2");});
});

easyUI总结部分
1、写法
easyUI可以有2种写法。一种是直接写标签,方法是在标签中加入: class="easyui-类型",如class="easyui-tabs"。另外一种写法是现用标签写个简单的input 或 div,然后在JS文件中写代码,如:

$("p").panel()

2、easyUI 的属性、方法、事件、构造函数
a、在JS写UI的构造函数时,好像只能写JS的属性或事件,如:

$('#tt').tabs({
border:false,
onSelect:function(title){alert(title+'is selected');}
});

b、属性的取值、赋值 写法

$('p').panel().title

以上这个写法只是取值的写法。如果需要赋值,还是需要再写一遍构造函数

$('p').panel({title:"这是改变后标题"});

通过这样的方式,就可以只更改一个属性,其他属性不变。
c、方法的写法
无参数方法的写法:

$('tt').tabs('getSelected');

有参数方法的写法:

$('p').panel('move',{left:100,top:100} );

3、Tabs插件
Tabs就是多个panel的组合。在实际中,添加tab的方法如下:

function addTab(tit){
if(!$('#tt').tabs('exists',tit)){ //看这个title是否存在
$('#tt').tabs('add',{title:tit, content:'Tab Body' });
}}

4、DataGrid 编辑
a、分页语句

select * from(
select rownum r, field1,field2 from table_name where rownum > = page* rows )where r < (page-1) * rows

b、双击行,进行操作
在构造函数中写:

onDblClickRow: function() {
var selected = $('#test').datagrid('getSelected');
if (selected){
window.open("DataView.action?Id="+selected.ID);
}}

c、删除

function DelAff(){
$.messager.confirm('确认','是否真的删除?',function(r){
if (r){
var selected = $('#test').datagrid('getSelected');
if (selected){
var index = $('#test').datagrid('getRowIndex', selected);
$('#test').datagrid('deleteRow', index);
DeleteSubmit(selected);
}
}
});
}
function DeleteSubmit(selected)
{
var url="DataDelete.action?Id="+selected.ID;
$.post(
url
);
}

这样页面的删除和数据库中的删除都实现了。



JQuery与JQuery EasyUI部分基础内容总结
文章《JQuery与JQuery EasyUI部分基础内容总结》二维码
  • 微信打赏
  • 支付宝打赏

无觅相关文章插件,快速提升流量