<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<link href="images/css.css" rel="stylesheet" />
<script language="javascript">
function change(_this){
var divInput= _this.form.getElementsByTagName("div")[0]
if(_this.value==''){
alert('请选择房源状态');
}
if(_this.value=='预定'){
divInput.style.display='block';
}
else {
divInput.style.display='none';
}
}
</script>
<script>
function submit(obj){
var sel=obj.form.getElementsByTagName("select")[0];
var value=sel.options[sel.selectedIndex].value;
var divInput= _this.form.getElementsByTagName("div")[0];
if(value==''){
alert('请选择房源状态');
return;
}
divInput.style.display='none';
document.forms[0].submit();
}
</script>
</head>
<body>
<form name="roomForm" method="post" action="/landi/room.do">
<input type="hidden" name="method" value="doStateEdit">
<input type="hidden" name="id" value="20">
<tr align="center" class="white">
<td class="row">G1409</td>
<td class="row">一室一卫(单间)</td>
<td class="row">44.0</td>
<td class="row">办公</td>
<td class="row">2009-05-14 16:05:02</td>
<td class="row"><select name="rom.state" id="rom.state" onchange="change(this)">
<option value="">---</option>
<option value="空闲" class="green">空闲</option>
<option value="入住" class="red">入住</option>
<option value="长租" class="blue">长租</option>
<option value="预定" class="purple">预定</option>
<option value="办公" class="white">办公</option>
<option value="故障" class="grey">故障</option>
</select>
<button class="button" onClick="javascript:submit(this);">提交</button>
</td>
</tr>
<div id="Layer" style="display:none">
<p> </p>
<p>从当前日期开始预订到
<input type="text" id="destine_edntime" name="destine_edntime" style="width:110px" />
(YYYY-MM-DD)</p> <p> </p>
</div>
</form>
<form name="roomForm" method="post" action="/landi/room.do">
<input type="hidden" name="method" value="doStateEdit">
<input type="hidden" name="id" value="22">
<tr align="center" class="white">
<td class="row">G1415</td>
<td class="row">一室一卫一厅(单套间)</td>
<td class="row">72.0</td>
<td class="row">办公</td>
<td class="row">2009-04-16 13:30:39</td>
<td class="row"><select name="rom.state" id="rom.state" onchange="change(this)">
<option value="">---</option>
<option value="空闲" class="green">空闲</option>
<option value="入住" class="red">入住</option>
<option value="长租" class="blue">长租</option>
<option value="预定" class="purple">预定</option>
<option value="办公" class="white">办公</option>
<option value="故障" class="grey">故障</option>
</select>
<button class="button" onClick="javascript:submit(this);">提交</button>
</td>
</tr>
<div id="Layer" style="display:none">
<p> </p>
<p>从当前日期开始预订到
<input type="text" id="destine_edntime" name="destine_edntime" style="width:110px" />
(YYYY-MM-DD)</p> <p> </p>
</div>
</form></body>
</html>为什么提交事件
function submit(obj){
var sel=obj.form.getElementsByTagName("select")[0];
var value=sel.options[sel.selectedIndex].value;
var divInput= _this.form.getElementsByTagName("div")[0];
if(value==''){
alert('请选择房源状态');
return;
}
divInput.style.display='none';
document.forms[0].submit();
}
中,为什么红色字体部分的代码不能够执行呢?而绿色字体部分的代码却可以执行呢?
一开始红色字体部分是这样写的 var sel=document.getElementById("rom.state");
var value=sel.options[sel.selectedIndex].value;
if(value==''){
alert('请选择房源状态');
return;
}
在静态页面上测试是正常的,但是放在上面的jsp页面里就不能执行了。
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<link href="images/css.css" rel="stylesheet" />
<script language="javascript">
function change(_this){
var divInput= _this.form.getElementsByTagName("div")[0]
if(_this.value==''){
alert('请选择房源状态');
}
if(_this.value=='预定'){
divInput.style.display='block';
}
else {
divInput.style.display='none';
}
}
</script>
<script>
function submit(obj){
var sel=obj.form.getElementsByTagName("select")[0];
var value=sel.options[sel.selectedIndex].value;
var divInput= _this.form.getElementsByTagName("div")[0];
if(value==''){
alert('请选择房源状态');
return;
}
divInput.style.display='none';
document.forms[0].submit();
}
</script>
</head>
<body>
<form name="roomForm" method="post" action="/landi/room.do">
<input type="hidden" name="method" value="doStateEdit">
<input type="hidden" name="id" value="20">
<tr align="center" class="white">
<td class="row">G1409</td>
<td class="row">一室一卫(单间)</td>
<td class="row">44.0</td>
<td class="row">办公</td>
<td class="row">2009-05-14 16:05:02</td>
<td class="row"><select name="rom.state" id="rom.state" onchange="change(this)">
<option value="">---</option>
<option value="空闲" class="green">空闲</option>
<option value="入住" class="red">入住</option>
<option value="长租" class="blue">长租</option>
<option value="预定" class="purple">预定</option>
<option value="办公" class="white">办公</option>
<option value="故障" class="grey">故障</option>
</select>
<button class="button" onClick="javascript:submit(this);">提交</button>
</td>
</tr>
<div id="Layer" style="display:none">
<p> </p>
<p>从当前日期开始预订到
<input type="text" id="destine_edntime" name="destine_edntime" style="width:110px" />
(YYYY-MM-DD)</p> <p> </p>
</div>
</form>
<form name="roomForm" method="post" action="/landi/room.do">
<input type="hidden" name="method" value="doStateEdit">
<input type="hidden" name="id" value="22">
<tr align="center" class="white">
<td class="row">G1415</td>
<td class="row">一室一卫一厅(单套间)</td>
<td class="row">72.0</td>
<td class="row">办公</td>
<td class="row">2009-04-16 13:30:39</td>
<td class="row"><select name="rom.state" id="rom.state" onchange="change(this)">
<option value="">---</option>
<option value="空闲" class="green">空闲</option>
<option value="入住" class="red">入住</option>
<option value="长租" class="blue">长租</option>
<option value="预定" class="purple">预定</option>
<option value="办公" class="white">办公</option>
<option value="故障" class="grey">故障</option>
</select>
<button class="button" onClick="javascript:submit(this);">提交</button>
</td>
</tr>
<div id="Layer" style="display:none">
<p> </p>
<p>从当前日期开始预订到
<input type="text" id="destine_edntime" name="destine_edntime" style="width:110px" />
(YYYY-MM-DD)</p> <p> </p>
</div>
</form></body>
</html>为什么提交事件
function submit(obj){
var sel=obj.form.getElementsByTagName("select")[0];
var value=sel.options[sel.selectedIndex].value;
var divInput= _this.form.getElementsByTagName("div")[0];
if(value==''){
alert('请选择房源状态');
return;
}
divInput.style.display='none';
document.forms[0].submit();
}
中,为什么红色字体部分的代码不能够执行呢?而绿色字体部分的代码却可以执行呢?
一开始红色字体部分是这样写的 var sel=document.getElementById("rom.state");
var value=sel.options[sel.selectedIndex].value;
if(value==''){
alert('请选择房源状态');
return;
}
在静态页面上测试是正常的,但是放在上面的jsp页面里就不能执行了。
解决方案 »
- web项目无限重启、、谢谢帮忙
- Iterate迭代的问题
- 初学者问题忘大家帮助下,高分相送!!
- java语言如何得到存储过程返回的ResultSet
- SQL2000O数据表中字段数据类型与JAVA类中对应字段的数据类型匹
- 再强的人,也有难题,各位强人,欢迎来到强人所难WEB技术交流群(3901579)
- 关于读取oracle中clob字段的中文信息的问题
- 讨论:在学校的局域网内,如何建立WEB站点让校外的用户能访问
- jsp初学问题,请各位高手不吝赐教。在线等待!一定给分!
- springboot+security登录成功后访问api302(已配置跨域)
- 急!!!hibernate问题
- 关于FCKEditor的内容
并不是红色字体没执行,而只是没执行if中的语句,可能是你的这个value!="";
而你下面的绿色字体部分在if之外所以被执行了。
function submit(obj){
alert("第一步");
var sel=obj.form.getElementsByTagName("select")[0];
alert("第二部");
var value=sel.options[sel.selectedIndex].value;
alert("第二部");
var divInput= _this.form.getElementsByTagName("div")[0];
alert("第二部");
if(value==''){
alert('请选择房源状态');
return;
}
divInput.style.display='none';
document.forms[0].submit();
}
测试了下,没有一个alert();打印出来的
改成:
<input type="button" value="提交" onClick="javascript:submit(this);">试试!因为我不知道你用的什么语言的,可我确实从没见过你上面这种提交方式的。
是我见识短浅了!不要见怪。
所以把 function submit(obj)改成如function sub(obj)或其它的都可以,不要写成js中的关键字。这样就没问题啦另外还有个问题var divInput= _this.form.getElementsByTagName("div")[0];
这里的'_this'应该是'obj'吧
obj.form.getElementsByTagName("select")[0];
这是ie写法,
其他浏览器不认识