代码
<script LANGUAGE="JavaScript">
function trim(str){ //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
}
// 填写版本号
function createCode() {
var number = document.getElementById("number");
var version = document.getElementById("<%=pageBean.EDITION %>");
if(number.value==""){
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}
if(isNaN(number.value)==true){
alert("请填写数字");
}
if(isNaN(number.value)==false){
version.value="<%=pageBean.getAnotheredition()%>"+"."+trim(number.value);
}
}
</script> <input type=text maxlength=20 size=20 name="<%=pageBean.EDITION %>" style="width:170px"
value="<%=pageBean.getEdition() %>" />
<input type="button" onclick="createCode()" value="生成版本号">
<input type=text maxlength=4 size=4 name="number" value=""/>
javascript脚本是判断 <input type=text maxlength=4 size=4 name="number" value=""/> 这个文本框里输入的数字的
pageBean.getAnotheredition() = "2.0.2"和 pageBean.getEdition()="2.0.2.1"都是进入页面给赋值好了的 这个主要是想可以修改版本号 如果不填写的话应该显示原先的版本号pageBean.getEdition()="2.0.2.1"但是这里出问题了 "number"文本框不填写任何值的时候 第一个文本框里的值 显示为"2.0.2."少了一个1 不知道为什么alert一下 alert("<%=pageBean.getEdition()%>");显示的是"2.0.2.1" 但是文本框里就是不给显示最后一个1 痛苦、郁闷、求解!!!!
<script LANGUAGE="JavaScript">
function trim(str){ //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
}
// 填写版本号
function createCode() {
var number = document.getElementById("number");
var version = document.getElementById("<%=pageBean.EDITION %>");
if(number.value==""){
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}
if(isNaN(number.value)==true){
alert("请填写数字");
}
if(isNaN(number.value)==false){
version.value="<%=pageBean.getAnotheredition()%>"+"."+trim(number.value);
}
}
</script> <input type=text maxlength=20 size=20 name="<%=pageBean.EDITION %>" style="width:170px"
value="<%=pageBean.getEdition() %>" />
<input type="button" onclick="createCode()" value="生成版本号">
<input type=text maxlength=4 size=4 name="number" value=""/>
javascript脚本是判断 <input type=text maxlength=4 size=4 name="number" value=""/> 这个文本框里输入的数字的
pageBean.getAnotheredition() = "2.0.2"和 pageBean.getEdition()="2.0.2.1"都是进入页面给赋值好了的 这个主要是想可以修改版本号 如果不填写的话应该显示原先的版本号pageBean.getEdition()="2.0.2.1"但是这里出问题了 "number"文本框不填写任何值的时候 第一个文本框里的值 显示为"2.0.2."少了一个1 不知道为什么alert一下 alert("<%=pageBean.getEdition()%>");显示的是"2.0.2.1" 但是文本框里就是不给显示最后一个1 痛苦、郁闷、求解!!!!
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}
我觉得既然这里你得到了想要的结果,怎么下面会不同呢?value="<%=pageBean.getEdition() %>" /> 是不是空格的问题额
这句就是判断是否为空啊
if(number.value==""){
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}
version.value="<%=pageBean.getAnotheredition()%>"+"."+trim(number.value);
}莫非在这里被改了?在这后面再用 alert(" <%=pageBean.getEdition()%>");
试过了 alert显示正常 是2.0.2.1 没有少1if(isNaN(number.value)==false){
version.value=" <%=pageBean.getAnotheredition()%>"+"."+trim(number.value);
alert(" <%=pageBean.getEdition()%>");
}
肯定够 maxlength=20 而且第一次进页面的时候就正确显示该值的
<input type=text maxlength=20 size=20 name="<%=pageBean.EDITION %>" style="width:170px"
value="<%=pageBean.getEdition()%>" />
当number.value为undefined或者null的时候isNaN(number.value)==false的结果为真一_一
用typeof number.value=='number'取代第一个判断44看呢喵~~?
也许number框为空的时候没有进到number.value==""的判断
当number.value为undefined或者null的时候isNaN(number.value)==false的结果为真一_一
用typeof number.value=='number'取代第一个判断44看呢喵~~?
在
<input type=text maxlength=20 size=20 name=" <%=pageBean.EDITION %>" style="width:170px"
value=" <%=pageBean.getEdition()%>" />
之后把结果打印出来看看,
<%System.out.println(pageBean.getEdition())%>
哥给写全点被 我不太会js typeof是什么函数? 干吗用的啊?
if(typeof number.value=='number'){
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}取代
if(number.value==""){
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}
44看
typeof 能判断类型的,js类型也就string,number,undefined,null,object大概这几个把喵~~`
用
if(typeof number.value=='number'){
version.valmue=" <%=pageBean.getEdition()%>";
alert(" <%=pageBean.getEdition()%>");
} 取代
if(number.value==""){
version.valmue=" <%=pageBean.getEdition()%>";
alert(" <%=pageBean.getEdition()%>");
}
44看
应该进入number.value==""判断了
if(number.value==""){
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}
在我点“生成版本号”按钮以后就弹出alert"2.0.2.1"了 说明应该进入number.value==""判断了
难道是这个问题喵??
value="<%=pageBean.getEdition() %>" />
<input type="button" onclick="createCode()" value="生成版本号">
<input type=text maxlength=4 size=4 name="number" value=""/>
var number = document.getElementById("number");
var version = document.getElementById("<%=pageBean.EDITION %>");你里面就没有id=**** 怎么用getElementById?
getElementById这个获得的不是input 里面的name属性名吗?
要嘛就前后加个form 用document.****Form.number.value
哎呀确实少了个id 我加了id了
<input type=text maxlength=20 size=20 id="<%=pageBean.EDITION %>"
name="<%=pageBean.EDITION %>" style="width:170px" value="<%=pageBean.getEdition() %>" />
<input type="button" onclick="createCode()" value="生成版本号">
<input type=text maxlength=4 size=4 name="number" id="number" value=""/>不过还是一样的错误 少最后的字符2.0.2.
version.valmue="<%=pageBean.getEdition()%>";
alert("<%=pageBean.getEdition()%>");
}
弹出的的alert时 alert显示是对的2.0.2.1 但是文本框里没有变化 还是上一次的某个值比如说2.0.2.34
我第一次点alert提示框没有消失 文本框里的值由2.0.2.34变成2.0.2.了 这就少了个最后以为字符 在点一下alert提示框才消失 文本框还是2.0.2. 这个错误显示
<%@ page import="com.res.product.domain.ProductPlan"%>
<%@ page import="java.text.*"%>
<%@ page import="java.util.*"%>
<HTML>
<HEAD>
<%@ include file="Header.jsp"%>
<TITLE><%=pageBean.getTitle()%></TITLE><script language="JavaScript" src="javascript/common.js"></script>
<link href="css/style.css" rel="stylesheet" type="text/css" /></HEAD>
<BODY>
<script LANGUAGE="JavaScript">
function trim(str){ //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
}
// 填写版本号
function createCode() {
var number = document.getElementById("number");
var version = document.getElementById("haha");
if(number.value==""){
version.value="<%=pageBean.getEdition()%>";
}
if(isNaN(number.value)==true){
alert("请填写数字");
}
if(isNaN(number.value)==false){
version.value="<%=pageBean.getAnotheredition()%>"+"."+trim(number.value);
}
}
</script>
<FORM NAME="form" ACTION="<%= pageBean.getHandlerPath() %>" METHOD="post" enctype="multipart/form-data" >
<INPUT TYPE=HIDDEN NAME="<%= pageBean.ACTION_NAME %>" VALUE="">
<h2> 提 交 产 品 </h2>
<TABLE width="70%" cellpadding="4" cellspacing="1" class="data_table" align="center">
<tr>
<td class="row_heading" width=20%> *产品名称:</td>
<td>
<input type=text maxlength=20 size=20 name="<%=pageBean.PRODUCT_NAME %>" style="width:170px"
value="<%=pageBean.getProductname() %>" readonly />
</td>
</tr>
<tr>
<td class="row_heading"> *提交时间:</td>
<td>
<input type=text maxlength=20 size=20 name="<%=pageBean.COMMITTIME %>" style="width:170px"
value="<%=pageBean.getTime()%>" readonly/> <font color=red> 提交时间已经为您填写好了 </font>
</td>
</tr>
<tr>
<td class="row_heading"> *提交版本:</td>
<td>
<input type=text maxlength=20 size=20 id="haha" name="<%=pageBean.EDITION %>" style="width:170px"
value="<%=pageBean.getEdition() %>" />
<input type="button" onclick="createCode()" value="生成版本号">
<input type=text maxlength=4 size=4 name="number" id="number" value=""/>
</td>
</tr>
<tr>
<td class="row_heading"> *提交说明:</td>
<td>
<TEXTAREA rows="5" cols="60" name="<%=pageBean.EXPLAIN %>"></TEXTAREA>
</td>
</tr>
<tr>
<td class="row_heading"> *提交人员:</td>
<td>
<input type=text maxlength=20 size=20 name="<%=pageBean.COMMITUSER %>" style="width:170px"
value="<%=pageBean.getCommiter() %>" readonly/> <font color=red> 该项已经为您填写好了 </font>
</td>
</tr>
<tr>
<td class="row_heading"> *测试状态:</td>
<td>
<input type=text maxlength=20 size=20 name="<%=pageBean.TESTSTATE %>" style="width:170px"
value="未测试" readonly/> <font color=red> 该项已经为您填写好了 </font>
</td>
</tr>
<tr>
<td class="row_heading"> *上传附件: </td>
<td> <font color=red> 请在下面的浏览中选择您要上传的文件 每个文件大小不得超过100M </font></td>
</tr>
<tr>
<td class="row_heading"> *文件1:</td>
<td>
<input name="file1" size="40" type="file">
</td>
</tr>
<tr>
<td class="row_heading"> *文件2:</td>
<td>
<input name="file2" size="40" type="file">
</td>
</tr>
<tr>
<td class="row_heading"> *文件3:</td>
<td>
<input name="file3" size="40" type="file">
</td>
</tr>
</TABLE><br><br>
<table align="center" width=40%>
<tr align="center">
<td>
<input style="cursor:hand" type="button" name="Submit5" value="提交产品"
onclick="if(doubleCheck())submitForm('<%= pageBean.COMMIT_FILE_ACTION_HTML_VALUE%>');"/>
</td>
<td>
<input style="cursor:pointer" type="button" name="Submit4" value="查看列表"
onclick="if(doubleCheck())submitForm('<%= pageBean.RETURN_COMMIT_LIST_ACTION_HTML_VALUE%>');"/>
</td>
</tr>
</table>
</FORM><%@ include file="footer.inc.jsp"%>
</BODY>
</HTML>
好多啊 你们看着不眼花啊?
<html><%
String EDITION="abc";
String getEdition="2.0.2.1";
String getAnotheredition="2.0.2";%><body>
<input type=text maxlength=20 size=20 id="<%=EDITION %>" name="<%=EDITION %>" style="width:170px"
value="<%=getEdition %>" />
<input type="button" onclick="createCode()" value="生成版本号">
<input type=text id="number" maxlength=4 size=4 name="number" value=""/>
</body>
</html>
<script LANGUAGE="JavaScript">
function trim(str){ //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
}
// 填写版本号
function createCode() {
var number = document.getElementById("number");
var version = document.getElementById("<%=EDITION %>");
if(number.value==""){
version.value="<%=getEdition%>";
alert("<%=getEdition%>");
}
if(isNaN(number.value)==true){
alert("请填写数字");
}
if(isNaN(number.value)==false){
version.value="<%=getAnotheredition%>"+"."+trim(number.value);
}
}
</script>
测试用的JSP 代码说明
if(number.value==""){
version.value="<%=getEdition%>";
alert("<%=getEdition%>");
}
这里判断出 number为空 但是并没有返回,程序继续往下走哦 if(isNaN(number.value)==false){
version.value="<%=getAnotheredition%>"+"."+trim(number.value);
}就到了这个地方,虽然你写了一个吃空格的trim ,但是,吃了空格后下面是什么都没有,于是 值变为 2.0.2.
哎呀 哥啊 ! 正解啊 总算解决了 我在每个if里都加了个return就ok了呵呵 if(number.value==""){
version.value="<%=pageBean.getEdition()%>";
return;
}
if(isNaN(number.value)==true){
alert("请填写数字");
return;
}
if(isNaN(number.value)==false){
version.value="<%=pageBean.getAnotheredition()%>"+"."+trim(number.value);
return;
}
加了return之后就可以了 但是如果文本框里只加空格的话还是要出原来的错误 这个怎么解决?
我写了个嘴笨的方法 。
if(number.value=="" || number.value==" " || number.value==" "|| number.value==" "|| number.value==" ")
{
version.value="<%=pageBean.getEdition()%>";
return;
}
有什么其他方法判断空格没?
if(isNaN(number.value)==false){
version.value="<%=pageBean.getAnotheredition()%>"+"."+trim(number.value);
}是不是isNaN这个函数不能只判断空格?
function isDigital(str)
{
for(ilen=0;ilen<str.length;ilen++)
{
if(str.charAt(ilen) < '0' || str.charAt(ilen) > '9' )
{
return false;
}
}
return true;
}给你一个判断数字的
PS:
我的目标是 ----> ^_^