js判断单选框[radio]是否_选中
昨天公司要写一个多组的投票系统,要求前台在未把内容提交给服务器脚本之前要进行判断,所以就出来这个问题哦.下面我们就来js判断单选框[radio]是否_选中的代码吧.
<form action="post.php" method="post" name="add" enctype="multipart/form-data" onSubmit="return check();" >
<h1>1、ssss?</h1>
<input name="v1" type="radio" value="300年">300年
<input name="v1" type="radio" value="400年">400年
<input name="v1" type="radio" value="1000年">1000年
</form>
上面是个简单的radio单选组,我们来看看js是怎么判断的吧.
<script>
var radio1=document.getElementsByName("v1");
for(var i=0;i<radio1.length;i++)
{
if(radio1.item(i).checked==true)
{
flag1=1;
break;
}
}
!flag1?return alert('未选');
</script>
哈哈不写完了,是不是很简单啊,申明一下,:本站原创文章转载请注明: www.111cn.net
怎么我们来看看我用php实现图片上传并支持预览效果,这是在帮一个相管客户写网站时用到了,我今天把它贴出来吧.
我们看看布局代码.
<table><tr>
<td height="50" align="center" class="td_heng">相片一</td>
<td class="td_heng" style="padding:10px;"><input name="uploadinput[]" type="file" onchange="yulan('div1',this);" size="35" /></td>
<td class="td_heng" id="div1" ></td>
</tr>
<tr>
<td height="50" align="center" class="td_heng">相片二</td>
<td class="td_heng" style="padding:10px;"><input name="uploadinput[]" type="file" onchange="yulan('div2',this);" size="35" /></td>
<td class="td_heng" id="div2"> </td>
</tr>
<tr>
<td height="50" align="center" class="td_heng">相片三</td>
<td class="td_heng" style="padding:10px;"><input name="uploadinput[]" type="file" onchange="yulan('div3',this);" size="35" /></td>
<td class="td_heng" id="div3"> </td>
</tr>
<tr>
<td height="50" align="center" class="td_heng">相片四</td>
<td class="td_heng" style="padding:10px;"><input name="uploadinput[]" type="file" onchange="yulan('div4',this);" size="35" /></td>
<td class="td_heng" id="div4"> </td>
</tr>
<tr>
<td width="12%" height="50" align="center" class="td_heng">相片五</td>
<td width="37%" class="td_heng" style="padding:10px;">
<input name="uploadinput[]" type="file" onchange="yulan('div5',this);" size="35" /></td>
<td width="51%" class="td_heng" id="div5"> </td>
</tr></table>
我们看到了特地指出蓝色的代码,下面就是我们用js 程序了.
function yulan(str,o)
{
var fileext=o.value.substring(o.value.lastIndexOf("."),o.value.length)
fileext=fileext.toLowerCase()
if ((fileext!='.jpg')&&(fileext!='.gif')&&(fileext!='.jpeg')&&(fileext!='.png')&&(fileext!='.bmp'))
{
alert("对不起,系统仅支持标准格式的照片,请您调整格式后重新上传,谢谢 !");
o.focus();
}
else
{
document.getElementById(str).innerHTML="<img src='"+o.value+"' height=60 style='border:1px dashed #ccc'>"
}
}
哈哈,就写完了,上传就用php 很简单的我就不多说了,最后申明一点本站原创文章转载请注明原处,尊重站的劳动: www.111cn.net
在linux下安装oracle是一件令人生畏的事情,其复杂程度远远超过安装linux操作系统本身。如果能够进行成功的安装oracle,那么同时也就顺便掌握了linux一些技术。本文介绍在redhat linux 下安装oracle 10g 的方法。在这里说明一下,Oracle 10g的g是grid 的缩写,意为网格,目前较为前沿的网络计算技术。
Oracle 10g 对软硬件的要求都非常的高,所以要玩转的话的花不少银子。首先来看看它对硬件的要求:内存512兆(建议1G),cpu 主频2.0G以上,硬盘转速7200转以上(建议使用scsi硬盘),依此条件,我看买台服务器才行。其次是软件要求:在oracle 官方的文档里,对于x86系列支持的操作系统只有3种(radhat ES/AS 2.1(x86),redhat ES/AS 3(x86),unitedlinux1.0(x86) ),如果只有redhat 9也是可以安装的,不过要麻烦一点点。当然oracle 10g需要更多的软件模块才能进行安装,这些软件模块我将在后面逐一说明。在本例中,使用RedHat ES 3(x86)作为操作平台,并且安装了xwindow。
接下来,我们检查是否符合oracle 10g 的安装要求,以表格的形式列出。首先是硬件情况。以root登录系统,并且启动x-window.如果用下表命令输出的值大于或等于建议值,请
检查项目 命令/方法 建议值
内存 #grep MemTotal /proc/meminfo 512MB
交换分区 #grep SwapTotal /proc/meminfo 1GB
/tmp目录空闲区 #df –k /tmp 400MB
硬盘空闲空间 #df -k 4GB
继续往下,检查软件需求。对redhat ES 3(x86),需要如下的软件包:
· Gnu gcc package, gcc-3.2.3-2 or 更高
下面的包也必须被安装:· make-3.79· binutils-2.11· openmotif-2.2.2-16· setarch-1.3-1 · compat-db-4.0.14.5· compat-gcc-7.3-2.96.122· compat-gcc-c++-7.3-2.96.122· compat-libstdc++-7.3-2.96.122· compat-libstdc++-devel-7.3-2.96.122
为了保证系统满足需求,执行下面的步骤检查安装的linux版本和安装的套件。
检查项目 命令/方法 建议值
Linux 版本 #cat /etc/issue ES 3
已安装的包 #rpm -q package_name 安装所需包(上表所列)
到这里我们已经全面的检查了安装oracle 10g所要求的软硬件环境,接着我们就要为安装创建组和用户。
下面的组和用户必须存在
The oinstall group (the oracle inventory group)
The dba group (the OSDBA group)
The oracle user (the oracle owner)
如果上面的组和用户不存在,用下面的步骤创建它们。(1)先查看这些组和用户是否存在:
#grep oinstall /etc/group
#grep dba /etc/group
(2)创建安装oracle 所需的组和用户
#groupadd osintall
#groupadd dba
#useradd –g oinstall –G dba oracle 检查一下oracle 是否属于组 oinstall 和 dba (#id oracle) 再给oracle 设置一个用户口令 #passwd oracle 输入两次密码。
创建安装所需的目录 /u01/app/oracle (the oracle base directory), /u02/oradata (an optional default directory ),用下表的命令形式创建它.然后改变它的目录权限。
创建目录 更改权限
#mkdir –p /u01/app/oracle #chown –R oracle:Oinstall /u01/app/oracle /u02/oradata
#mkdir –p /u02/oradata #chmod –R 755 /u01/app/oracle /u02/oradata
配置内核参数,下表是oracle 推荐的内核参数值,请参考。
Parameter Value File
semmslsemmnssemopmsemmni 25032000100128 /proc/sys/kernel/sem
shmall 2097152 /proc/sys/kernel/shmall
shmmax Half the size of physical memory /proc/sys/kernel/shmmax
shmmni 4096 /proc/sys/kernel/shmmni
file-max 65536 /proc/sys/fs/file-max
ip_local_port_range 1024 65000 /proc/sys/net/ipv4/ip_local_port_range
确保当前的参数值大于或等于上表所列。那么怎样查看这些参数值呢?用命令 #/sbin/sysctl –a | grep <参数名>,例如查看semmsl,用 #/sbin/sysctl -a | grep sem,余下的与此类似。逐个察看这些参数值,如果参数值不满足要求,就需要修改它们。请完成下面这些步骤
a.用文本编辑器,创建或者编辑/etc/sysctl.conf文件,添加或修改如下的行
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
b.改变当前内核参数的值,用命令 #/sbin/sysctl –p 来实现。
为了提高在linux系统上运行软件的性能,必须对oracle用户设置下列shell 限定。
Shell Limit Item in limits.conf Hard Limit
Maximum number of open file descriptors nofile 65536
Maximum number of processes available to a single user nproc 16384
现在创建这些限定:
1. 加入下面的行到文件/etc/security/limits.conf
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
2. 加入下面的行到文件/etc/pam.d/login ,假如它不存在的话
session required /lib/security/pam_limits.so
3.根据oracle 用户的默认shell,对默认 shell start-up文件作如下改变,如果是Bourne, Bash, or Korn shell,修改环境变量/etc/profile文件如下:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
如果是c shell,则环境变量文件 /etc/csh.login的修改值如下:
if ( $USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
endif
接下来挂接光盘,#mount /dev/cdrom /mnt/cdrom 。
以oracle 用户名登录系统,配置oracle 用户的环境。以oracle 帐号用安装器来安装oracle,但是开始运行安装器之前,还得设定oracle用户的环境变量,因此必须:
设置shell startup文件的umask 为022
设置DISPLAY, ORACLE_BASE, and ORACLE_SID 的环境变量。下面这些步骤是对这些环境变量进行设置的方法:
1、 开启一个终端会话
2、 确认xwindow 能正常显示。#xhost +
3、 改变用户为oracle. $ su – oracle
4、 检查oracle用户的默认shell. $echo $SHELL
5、 用文本编辑器修改oracle用户的环境变量
bash shell on redhat
$vi .bash_profile
c shell
%vi .login
6、 把下面的行插入上面编辑的文件中
umask 022
7、 保存文件并退出
8、 运行shell开始脚本:
Bash shell on Red Hat $ . ./.profile
C shell % source ./.login
9、设置环境变量
Bash shell
$ ORACLE_BASE=/u01/app/oracle
$ ORACLE_SID=sales
$ export ORACLE_BASE ORACLE_SID
c shell
% setenv ORACLE_BASE /u01/app/oracle
% setenv ORACLE_SID sales
10、确认ORACLE_HOME and TNS_ADMIN 的环境变量不被用户设置
Bash shell
$ unset ORACLE_HOME
$ unset TNS_ADMIN
c shell
% unsetenv ORACLE_HOME
% unsetenv TNS_ADMIN
11、再检验一下上面设定的环境变量是否正确。
$ umask
$ env | more
哎呀!终于算是完成准备工作了,喝口水,伸伸懒腰。进入安装器(runInstaller)所在的目录 $ cd /tmp 运行安装 $ /mnt/cdrom/runInstaller ,依照提示完成整个安装。
初学者对于设计模式肯定存在着很多不明白之处,今天刚好周末,就抽出来点时间写了一个单件模式结合命令链模式打造系统核心的文章,可能对于部分人来说,文章内容过于浅显,这是送给初学者的教程,因为时间比较紧(要陪老婆逛街,呵呵),其中出现了设计不规范的,代码书写不规范的,bug等等还望各路大侠指出来,方便大家共同进步.本人水平有限.^_^
相信大家都已经读过很多关于在php中应用设计模式的书籍或是文章,但是很少有直接给予实例,大部分看完之后有种迷迷糊糊的感觉,如果没有项目实践,很难将设计模式部分弄清楚.
为避免代码过于复杂.没有添加异常处理等内容.
单件模式以及命令链模式的基础知识,大家自己google一下.不详细讲了.下面直接看实例:
<?php /* *@author:NoAngels *@time:08年08月30日 */ interface IRunAction{ //获取类中定义的可以被APP中run的方法 static function LoadActions(); //类中的入口函数调用该类中其他函数用 function runAction($action, $args); } /* *APP类系统的核心部分 */ class APP{ static private $__instance = null; static private $__commands = array(); static private $__flag = 1; private function __construct(){} //单件模式设计获取该类的唯一实例 static function Load(){ if(self::$__instance == null) self::$__instance = new APP; return self::$__instance; } //添加命名到APP的$__instance中每次添加新命令的时候检查是否之前已经添加过一个该类的实例 //如果有就忽略操作如果没有就添加进来 public function addCommand($cmdName){ foreach(self::$__commands as $cmd){ if(strtolower(get_class($cmd)) == strtolower(get_class($cmdName))){ self::$__flag = 0; break; } } if(self::$__flag == 1) self::$__commands[] = $cmdName; self::$__flag = 1; } //命令链模式设计的核心部分调用实例的入口函数 //首先检查是否在类中允许调用该操作如果没有就提示未定义操作退出 public function runCommand($action, $args){ self::$__flag = 0; foreach(self::$__commands as $cmd){ if(in_array($action, $cmd->LoadActions())){ self::$__flag = 1; $cmd->runAction($action, $args); } } if(self::$__flag == 0){ self::$__flag = 1; exit("undefined action by action : $action"); } } //删除某个类的实例,只要指定类的名字即可 public function removeCommand($className){ foreach(self::$__commands as $key=>$cmd){ if(strtolower(get_class($cmd)) == strtolower($className)){ unset(self::$__commands[$key]); } } } //供大家测试用看看是否添加以及删除成功 public function viewCommands(){ echo(count(self::$__commands)); } } //类User实现接口IRunAction class User implements IRunAction{ //定义可以调用的操作 static private $__actions = array('addUser', 'modifyUser', 'removeUser'); //获取可以调用的操作,实际过程中不要直接就爱你个$__actions设计成public调用 //而应该设计一个LoadActions函数获取$__actions的值 static public function LoadActions(){ return self::$__actions; } //运行指定函数 public function runAction($action, $args){ //不明白这个函数使用的可以参看手册 call_user_func(array($this,$action), $args); } //测试函数而已 protected function addUser($name){ echo($name); } } //类Test同类User class Test implements IRunAction{ static private $__actions = array('addTest', 'modifyTest', 'removeTest'); static public function LoadActions(){ return self::$__actions; } public function runAction($action, $args){ call_user_func(array($this,$action), $args); } protected function addTest($name){ echo($name); } } //以下是测试代码 APP::Load()->addCommand(new User); APP::Load()->addCommand(new User); APP::Load()->addCommand(new User); APP::Load()->addCommand(new User); APP::Load()->runCommand('addUser', 'NoAngels'); APP::Load()->addCommand(new Test); APP::Load()->runCommand('addTest', null); |
APP类用单件模式设计,它是系统的核心部分.相信大家看代码就知道了Load方法是载入APP类实例,相当于有些书籍中的getInstance静态方法.他有addCommand,runCommand,removeCommand三个public方法.runCommand是核心部分.同时也是命令链模式的核心启动程序.具体实现请看源代码.代码写的已经很清楚了,就此不再赘述.
类User,Test实现了接口IRunAction,这两个类中都定义了一个静态私有变量$__actions,为一数组,其中包含了可以被APP的runCommand函数调用的操作.
下面是系统的运行流程:
APP启动
-------addCommand,将将要运行的操作所属的类添加到APP中.如果添加的类是用单件模式设计的.可以如下添加addCommand(SingletonClass::Load()).否则可以如下调
addCommand(new someClass)
-------runCommand.运行操作.比如在User类中有一操作addUser.我直接可以启用runCommand($acttion, $args).在APP中循环遍历$__commands数组,如果其中某个类的实例拥有该操作,就调用该实例的runAction函数.如果你没有将某个类的实例利用addCommand添加进来,就提示未定义操作,退出.
在类User和类Test中的runAction调用了call_user_func这个非常使用的函数.调用该类中对应函数.
提示:讲解与实例部分就到此了,具体你怎么理解,以及如何将该思想利用,就看你自己的理解,凡事必须自己动手才行.(ps:可以做成框架中的单一入口文件,实不实现MVC就看你自己是怎么想的了.)
我们通常会通过单击按钮的操作,将定义好的内容直接复制到剪贴板
对于用户来说点了按钮直接【Ctrl】+【V】就可以了。
其实该功能的核心原理就是用到了window子对象clipboardData的一个方法:setData()
其语法是:clipboardData.setData(sDataFormat, sData)
参数sDataFormat表示要复制的内容的格式;参数sData则要复制的内容。
返回值:复制成功返回true;失败返回false。
比如:
clipboardData.setData("text","www.czz5.com")
<a href="#" onclick=javascript:clipboardData.setData("text","www.czz5.com")>
单击当前链接文本表示复制了内容到本地剪贴板,只需在【Ctrl】+【V】就能显示出定义的内容
</a>
以上是定义了固定的值复制到本地剪贴板,可用在诸如“将本页转阅给朋友”类似的功能需求中,以达到快捷转达网址或信息的目的。
此外,我们还会遇到这样的一些情况:当我们在某网站复制了一段内容之后,在粘贴下来时,发现不自觉的多了一行信息,该信息即是由内容复制到剪贴板同时增加的一行信息。
也就是说我们写入到剪贴板中的值除了拷贝的选择内容外,还有自己定义的值,那么如何获得“拷贝的选择内容”,这就需要使用到 document.selection.createRange() 方法,其中该方法配合 execCommand,在 HTML 编辑器中很有用,比如:文字加粗、斜体、复制、粘贴、创建超链接等。
<textarea cols=40 rows=10>
www.czz5.com 中国站长网
www.tangshanseo.cn 唐山SEO
www.xiaoduzi.com 健康减肥网
</textarea> <br>
<input type=button value="先选择文本框文本再单击本按钮" onclick=alert(document.selection.createRange().text)>
</form>
所以,应用了document.selection.createRange().text就能重新定义剪贴板中的值了。
选择复制本段文本,然后粘贴到文本编辑器中查看是不是多了一些附加信息。
<script type="text/javascript">
document.body.oncopy=function(){
event.returnValue=false;
var t=document.selection.createRange().text;
var s="有关单击按钮将内容复制到剪贴板的原文内容地址: "+location.href;
clipboardData.setData('Text',t+'rnrn'+s+'rn');
}
</script>
相关文章
- 本篇文章主要分享了通过window.navigator来判断浏览器及其版本信息的实例代码。具有一定的参考价值,下面跟着小编一起来看下吧...2017-01-23
- 使用 conditional comment 来判断 IE 的版本。嗯,是早早有人提出,但没有认真看代码。昨天刚好在看 CSS3 PIE 的时候看到,觉得是不是不靠谱。今天看到 Paul Irish 也提起,那么,推荐一下吧。这是作者博客上写的:复制代码 代码...2014-05-31
- 下面小编就为大家分享一篇c# 判断是否为空然后赋值的4种实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- 具体详情请看下文小编给大家带来的知识点。同编写程序类似,存储过程中也有对应的条件判断,功能类似于if、switch。在MySql里面对应的是IF和CASE1、IF判断IF判断的格式是这样的:IF expression THEN commands [ELSEIF ex...2015-10-21
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
废话不多说了,直接给大家贴代码了。<?php class test{} $a1 = null; $a2 = ""; //$a3 = $a4 = 0; $a5 = '0'; $a6 = false; $a7 = array(); //var $a8; $a9 = new test(); for ($i=1; $i <=9 ; $i++) {...2015-11-24- 这篇文章主要介绍了java正则表达式判断前端参数修改表中另一个字段的值,需要的朋友可以参考下...2021-05-07
- 这篇文章主要介绍了C#判断一个字符串是否是数字或者含有某个数字的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 今天小编大家分享一篇C#获得程序的根目录以及判断文件是否存在的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
从PHP $_SERVER相关参数判断是否支持Rewrite模块
如果是http://www.jb51.net/p1141.html形式的URL,可通过$_SERVER['REQUEST_URI']和$_SERVER['QUERY_STRING']值的区别来分析,最主要是如果页面是通过重定向会产生$_SERVER['REDIRECT_QUERY_STRING']和$_SERVER['REDIREC...2013-10-04- 整体思路是这样的:判断div内部是否为空,如果为空,给出无数据提示;否则显示正常页面,下面给大家分享js判断div内容是否为空的方法,对判断div内容是否为空的相关知识感兴趣的朋友一起学习吧...2016-02-01
- 这篇文章主要给大家介绍了关于toString.call()通用的判断数据类型方法的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-08-29
- js 检测判断fckeditor是否为空 <!-- 用一般的js是不可能获取 fck 编辑器内容的是否有值的,我们得用 FCKeditorAPI接口来实例--> <!DOCTYPE html PUBLIC "-//W3C//DTD...2016-09-20
- js判断手机或者PC的例子我们在几乎所有网站都会有这段代码了,现在手机流量与pc差不多了,下面来看两段js判断手机或者PC例子吧...2015-12-17
- 这篇文章主要介绍了Lua判断变量是否为数字、字符串是否可以转换为数字等,本文讲解了Lua 判断是字符还是数字的方法、Lua判断数字的方法、判断可否转换为数字的方法、判断并且准备一个初值的方法,需要的朋友可以参考下...2020-06-30
- javascript代码判断按钮是否被点击了在项目中经常会遇到这个需求,今天小编抽点时间给大家分享一段代码关于javascript判断按钮是否被点击的方法,感兴趣的朋友一起学习吧...2015-12-14
- 这篇文章主要介绍了C#判断某程序是否运行的方法,代码结构简单功能实用,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了C#中文件名或文件路径非法字符判断方法,本文主要使用了内置的GetInvalidFileNameChars方法实现非法字符判断,需要的朋友可以参考下...2020-06-25
- 下面通过判断一个数是偶数还是奇数来展示交互递归的应用,并且此题突出了递归跳跃的信任的重要性,需要的朋友可以参考下...2020-04-25
- 下面小编就为大家带来一篇thinkphp自定义权限管理之名称判断方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2017-04-03
- 这篇文章主要给大家介绍了关于利用JS十分钟判断数组中存在元素的多种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-05