<html>
<head>
<script>
//判断 checkbox 是否选中
function onchang(){
var ckbox = document.getElementById('ckbox');
if(ckbox.checked == true){
if(getValue() == true){
alert(11);
}else{
// 验证一切不合理
return false;
}
}else{
//没有选中 checkbox
}alert("成功");
}
</script>
<script>
//获取时间 是否成功
function getValue(){
var tname = document.getElementById('tname').value;
if(tname != ""){
if(cheValue(tname) == true){
return true;
}else{
alert("时间验证失败");
return false;
}
}else{
alert("请输入时间");
return false;
}
}
</script>
<script>
//验证时间 是否成功
function cheValue(tname){
var partten = /^([01][0-9]|2[0-3])(:[0-5][0-9]){1,2}$/;
if(partten.test(tname)){
return true;
}else{
alert("时间格式不正确");
return false;
}
}
</script>
</head>
<body>
<select name="sel" onchange = "onchang();">
<option value="1">1</option><option value="2">2</option><option vlaue="3">3</option>
</select>
<br>
<br>
<input type="checkbox" name="ckbox"/> <input type="text" name="tname" value=""/>
</body>
</html>
代码说明
方法 function onchang() 当下拉框发生改变的时候, 先判断 checkbox 是否选种. 方法 function getValue() 当checkbox 选中时 ,判断 文本框中是否有值。
方法 cheValue(tname) 验证文本框中的值是否合理性。 我要的效果是 希望 onchang() 方法能得到 文本框中合理的值,并且验证成功。 返还给 onchang(); 希望大虾们 帮忙解决 ,谢谢 !
<head>
<script>
//判断 checkbox 是否选中
function onchang(){
var ckbox = document.getElementById('ckbox');
if(ckbox.checked == true){
if(getValue() == true){
alert(11);
}else{
// 验证一切不合理
return false;
}
}else{
//没有选中 checkbox
}alert("成功");
}
</script>
<script>
//获取时间 是否成功
function getValue(){
var tname = document.getElementById('tname').value;
if(tname != ""){
if(cheValue(tname) == true){
return true;
}else{
alert("时间验证失败");
return false;
}
}else{
alert("请输入时间");
return false;
}
}
</script>
<script>
//验证时间 是否成功
function cheValue(tname){
var partten = /^([01][0-9]|2[0-3])(:[0-5][0-9]){1,2}$/;
if(partten.test(tname)){
return true;
}else{
alert("时间格式不正确");
return false;
}
}
</script>
</head>
<body>
<select name="sel" onchange = "onchang();">
<option value="1">1</option><option value="2">2</option><option vlaue="3">3</option>
</select>
<br>
<br>
<input type="checkbox" id="ckbox" name="ckbox"/> <input type="text" id="tname" name="tname" value=""/>
</body>
</html>
<head>
<script>
//判断 checkbox 是否选中
function onchang(){
var ckbox = document.getElementById('ckbox');
if(ckbox.checked == true){
if(getValue() == true){
return document.getElementById('tname').value; //难道这样不是返回值吗?
}else{
// 验证一切不合理
return false;
}
}else{
//没有选中 checkbox
}alert("成功");
}
</script>
<script>
//获取时间 是否成功
function getValue(){
var tname = document.getElementById('tname').value;
if(tname != ""){
if(cheValue(tname) == true){
return true;
}else{
alert("时间验证失败");
return false;
}
}else{
alert("请输入时间");
return false;
}
}
</script>
<script>
//验证时间 是否成功
function cheValue(tname){
alert(tname);
var partten = /^(([01][0-9])|(2[0-3]))(:[0-5]?[0-9]){1,2}$/;
if(partten.test(tname)){
return true;
}else{
alert("时间格式不正确");
return false;
}
}
</script>
</head>
<body>
<select name="sel" onchange = "onchang();">
<option value="1">1</option><option value="2">2</option><option vlaue="3">3</option>
</select>
<br>
<br>
<input type="checkbox" id="ckbox" name="ckbox"/> <input type="text" id="tname" name="tname" value=""/>
</body>
</html>
因为你想在onchang()中得到正确的返回值,所以你在getValue()中应该在验证正确的情况下return tname,
这样的话,在onchang()中不就得到输入框中正确的时间值了吗