本文介绍下,用jquery操作radio、checkbox、select的具体例子。
1、radio:单选框
<input type="radio" name="radio" id="radio2" value="2" />2
<input type="radio" name="radio" id="radio3" value="3" />3
<input type="radio" name="radio" id="radio4" value="4" />4
js代码:
jQuery('input[type="radio"][name="radio"]:checked').val(); // 获取一组radio被选中项的值
jQuery("input[type='radio'][name='radio'][value='2']").attr("checked", "checked");// 设置value = 2的一项为选中
jQuery("#radio2").attr("checked", "checked"); // 设置id=radio2的一项为选中
jQuery("input[type='radio'][name='radio']").get(1).checked = true; // 设置index = 1,即第二项为当前选中
var isChecked = jQuery("#radio2").attr("checked");// id=radio2的一项处于选中状态则isChecked = true, 否则isChecked = false;
var isChecked = jQuery("input[type='radio'][name='radio'][value='2']").attr("checked");// value=2的一项处于选中状态则isChecked = true, 否则isChecked = false;
2、checkbox:复选框
<input type="checkbox" name="checkbox" id="checkbox_id1" value="1" />1
<input type="checkbox" name="checkbox" id="checkbox_id2" value="2" />2
<input type="checkbox" name="checkbox" id="checkbox_id3" value="3" />3
<input type="checkbox" name="checkbox" id="checkbox_id4" value="4" />4
<input type="checkbox" name="checkbox" id="checkbox_id5" value="5" />5
js代码:
var isSelected = jQuery("#checkbox_id3").attr("checked"); // 判断id=checkbox_id3的那个复选框是否处于选中状态,选中则isSelected=true;否则isSelected=false;
jQuery("#checkbox_id3").attr("checked", true);// or
jQuery("#checkbox_id3").attr("checked", 'checked');// 将id=checkbox_id3的那个复选框选中,即打勾
jQuery("#checkbox_id3").attr("checked", false);// or
jQuery("#checkbox_id3").attr("checked", '');// 将id=checkbox_id3的那个复选框不选中,即不打勾
jQuery("input[name=checkbox][value=3]").attr("checked", 'checked');// 将name=checkbox, value=3 的那个复选框选中,即打勾
jQuery("input[name=checkbox][value=3]").attr("checked", '');// 将name=checkbox, value=3 的那个复选框不选中,即不打勾
jQuery("input[type=checkbox][name=checkbox]").get(2).checked = true;// 设置index = 2,即第三项为选中状态
jQuery("input[type=checkbox]:checked").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出选中的值
alert(jQuery(this).val());
});
// 全选/取消全选
jQuery(function() {
jQuery("#checkAll").click(function(){
if(jQuery(this).attr("checked") == true){// 全选
jQuery("input[type=checkbox][name=checkbox]").each(function(){
jQuery(this).attr("checked", true);
});
} else {// 取消全选
jQuery("input[type=checkbox][name=checkbox]").each(function(){
jQuery(this).attr("checked", false);
});
}
});
});
3、select:下拉框
<option value="1">11</option>
<option value="2">22</option>
<option value="3">33</option>
<option value="4">44</option>
<option value="5">55</option>
<option value="6">66</option>
</select>
js代码:
* jQuery获取select的各种值
*/
jQuery("#select_id").change(function(){ // 1.为Select添加事件,当选择其中一项时触发
//code...
});
var checkValue = jQuery("#select_id").val(); // 2.获取Select选中项的Value
var checkText = jQuery("#select_id :selected").text(); // 3.获取Select选中项的Text
var checkIndex = jQuery("#select_id").attr("selectedIndex"); // 4.获取Select选中项的索引值,或者:jQuery("#select_id").get(0).selectedIndex;
var maxIndex = jQuery("#select_id :last").attr("index"); // 5.获取Select最大的索引值,或者:jQuery("#select_id :last").get(0).index;
/**
* jQuery设置Select的选中项
*/
jQuery("#select_id").get(0).selectedIndex = 1; // 1.设置Select索引值为1的项选中
jQuery("#select_id").val(4); // 2.设置Select的Value值为4的项选中
/**
* jQuery添加/删除Select的Option项
*/
jQuery("#select_id").append("<option value='新增'>新增option</option>"); // 1.为Select追加一个Option(下拉项)
jQuery("#select_id").prepend("<option value='请选择'>请选择</option>"); // 2.为Select插入一个Option(第一个位置)
jQuery("#select_id").get(0).remove(1); // 3.删除Select中索引值为1的Option(第二个)
jQuery("#select_id :last").remove(); // 4.删除Select中索引值最大Option(最后一个)
jQuery("#select_id [value='3']").remove(); // 5.删除Select中Value='3'的Option
jQuery("#select_id").empty(); // 6.清空下拉列表
一个基于cookie原理实现的登录表单。
代码:
<html>
<head>
<title>用户登录表单</title>
</head>
<body>
<form name="forml" method="POST" action="/blog_article/CookieBasedPasswordLogin.html">
<table>
<tr>
<td colspan="2" >
<div align="center"><b>请输入用户名与密码</b></div>
</td>
</tr>
<tr>>
<td>
<div align="right">Customer ID</div>
</td>
<td>
<input type="text" name="username">
</td>
</tr>
<tr>
<td>
<div align="right">Password</div>
</td>
<td>
<input type="password" name="password">
</td>
</tr>
<tr>
<td colspan="2">
<center>
<input type="submit" name="Submit" value="Login">
</center>
</td>
</tr>
</table>
</form>
</body>
</html>
<!-- CookieBasedPasswordLogin.php
<?php
//检测用户登录
//基于cookie实现的用户登录检测程序
//edit by www.
$now = getdate();
$storetime= $now["weekday"] . " " . $now["month"] ." " . $now["year"] ;
$storetime.=" Time : ";
if ($now["hours"] < 10) {
$storetime.= "0" . $now["hours"];
} else {
$storetime.= $now["hours"];
}
$storetime.= ":";
if ($now["minutes"]<10) {
$storetime.= "0" . $now["minutes"];
} else {
$storetime.= $now["minutes"];
}
$storetime.= ": ";
if ($now["seconds"] <10) {
$storetime.= "0" . $now["seconds"];
} else {
$storetime.= $now["seconds"];
}
if (isset($data)) {
$counter=++$data[l];
setcookie("data[0]",$storetime,time() + (60*60*24));
setcookie("data[l]", $counter,time() + (60*60*24)); setcookie("data[2]",$username,time() + (60*60*24));
echo "<b><center>Hi " . $data[2] . " ! !</center></b><br>n";
echo "<b><center>Last Login Time :" .$data[0] . "</center></b><br>n";
echo "<b><center>Current Date :" .$storetime. "</center></b><br>n";
echo "<b><center>Page View Count :" . $data[l]. "</center></b><br>n";
echo "<b><center>成功登录!</center></b>";
echo ("<b><contor>您可以在24小时内,无需再次登录,即可访问本站的内容。</center></b>");
} else {
if (isset($username) && isset($password)) {
if ($password=="superpass") {
$counter=0;
setcookie("data[0]",$storetime,time() + (60*60*24));
setcookie("data[l]",$counter,time() + (60*60*24));
setcookie("data[2]",$username,time() + (60*60*24));
$url="Location: cookieimp.php";
header($url);
}else{
echo "<hl><center>密码无效!</center></hl>";
}
}
}
?>
-->一、普通文件上传
1,前端代码
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br /><input type="submit" name="submit" value="Submit" />
</form>
2,upload_file.php
//php普通文件上传
//by www.
if ((($_FILES["file"]["type"] == "image/gif")|| ($_FILES["file"]["type"] == "image/jpeg")|| ($_FILES["file"]["type"] == "image/pjpeg"))&& ($_FILES["file"]["size"] < 20000)){
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}else {
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("upload/" . $_FILES["file"]["name"])){
echo $_FILES["file"]["name"] . " already exists. ";
}else{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}else {
echo "Invalid file";
}
?>
二、异步文件上传
使用iframe异步上传文件。
1,前端html
导入文件:<input type="file" name="myfile" id="myfile" />
<input type="submit" name="submitBtn" value="导入" />
<iframe id="upload_target" name="upload_target" src="#" ></iframe>
</form>
<span id="info"></span>
2,Js代码
var spanObj = document.getElementById("info");
spanObj.innerHTML = " 开始上传";
document.getElementById("upForm").sumbit();
}
//回调
function stopUpload(responseText){
var spanObj = document.getElementById("info");
spanObj.innerHTML = "上传成功";
spanObj.innerHTML = responseText;
}
2)、服务器端代码
<?php
$file = $_FILES['myfile'];
$fileName = uploadFile($file);
//$result = readFromFile("../upload/" . $fileName);
echo "<script type='text/javascript'>window.top.window.stopUpload('{$fileName}')</script>";
function uploadFile($file) {
// 上传路径
$destinationPath = "../upload/";
if (!file_exists($destinationPath)){
mkdir($destinationPath , 0777);
}
//重命名
$fileName = date('YmdHis') . '_' . iconv('utf-8' , 'gb2312' , basename($file['name']));
if (move_uploaded_file($file['tmp_name'], $destinationPath . $fileName)) {
return iconv('gb2312' , 'utf-8' , $fileName);
}
return '';
}
//代码注释
/*
1,关于basename方法
$path = "/testweb/home.php";
//显示带有文件扩展名的文件名
echo basename($path);
//显示不带有文件扩展名的文件名
echo basename($path,".php");
2,关于iconv
iconv('gb2312' , 'utf-8' , $fileName);//将$fileName从gb2312转为utf-8格式。
注:该函数需要开启php.ini里面的php_iconv.dll
3,关于$_FILES['myfile']
$_FILES相当于一个二维数组,而$_FILES['myfile']相当于一个一维数组。所以可以
$f = $_FILES['myfile'];
echo $f['name'];
如果直接访问该$_FILES['myfile'],则会报Undefined index: myfile。此时加上
if(!isset($_FILES['myfile'])){
die('上传文件不存在!');
}
*/