jsp中两个javascript,但是只能成功运行一个,单独都能正常运行。

一些css代码就省略了。两个js,单独都能正常使用,但是放在一起只有第二个js有反应,第一个没反映。

<%@ page language="java" import="java.util.*,pojo.Consume,Dao.ConsumeDao" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>    
    <title>分类汇总</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="./css/doubleDate.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" language="javascript" src="./js/jquery-1.4.2.min.js" ></script>
<script type="text/javascript" language="javascript" src="./js/doubleDate2.0.js" ></script>
<script>
$(function(){
    $('.doubledate').kuiDate({
        className:'doubledate',
        isDisabled: "0"  // isDisabled为可选参数,“0”表示今日之前不可选,“1”标志今日之前可选
    });
});
</script>
<script type="text/javascript" language="javascript" src="./js/jquery-1.10.2.js"></script>
<script>
function alertWin(Cno)
{ 
    /*       $.ajax({
        type:"post",
        url:"./ShowDetail",
        data:{Cno:Cno},
        success:function(data){
            alert("success");
        }
        });  */
     var msgw,msgh,titleheight,bordercolor,titlecolor;
     msgw = 300;//提示窗口的宽度
     msgh = 300;//提示窗口的高度
     titleheight = 25 //提示窗口标题高度
     bordercolor = "#A480B2";//提示窗口的边框颜色
     titlecolor = "#A480B2";//提示窗口的标题颜色

     //根据自己需求注意宽度和高度的调整
     var iWidth = document.documentElement. clientWidth; 
     var iHeight = document.documentElement.clientHeight; 
     //遮罩层
     var bgObj = document.createElement("div"); 
     bgObj.setAttribute("id", "bgObj");//设置ID
     bgObj.style.cssText = "position:absolute;left:0px;top:0px;width:"+iWidth+"px;height:"+Math.max(document.body.clientHeight, iHeight)+"px;filter:Alpha(Opacity=30);opacity:0.3;background-color:#000000;z-index:101;";
     document.body.appendChild(bgObj);

     //弹出窗口
     var msgObj=document.createElement("div");
     msgObj.setAttribute("id", "msgDiv");//可以用bgObj.id="msgDiv"的方法,是为div指定属性值
     msgObj.setAttribute("align", "center");//为div的align赋值
     msgObj.style.background = "white";//背景颜色为白色
     msgObj.style.border = "1px solid " + bordercolor;//边框属性,颜色在上面已经赋值
     msgObj.style.position = "absolute";//绝对定位
     msgObj.style.left = (iWidth-msgw)/2  ;//从左侧开始位置
     msgObj.style.top = (iHeight-msgh)/2;//从上部开始位置
     msgObj.style.font = "12px/1.6em Verdana, Geneva, Arial, Helvetica, sans-serif";//字体属性
     msgObj.style.width = msgw + "px";//提示框的宽(上面定义过)
     msgObj.style.height = msgh + "px";//提示框的高(上面定义过)
     msgObj.style.textAlign = "center";//文本位置属性,居中。
     msgObj.style.lineHeight = "25px";//行间距
     msgObj.style.zIndex = "102";//层的z轴位置
     document.body.appendChild(msgObj);

     //弹出窗口标题
     var title = document.createElement("div");//创建一个标题对象
     title.setAttribute("id", "msgTitle");//为标题对象填加id
     title.style.margin = "0";//浮动
     title.style.padding = "3px";//浮动
     title.style.background = titlecolor;//背景颜色
     title.style.filter = "progid:DXImageTransform.Microsoft.Alpha(startX=20, startY=20, finishX=100, finishY=100,style=1,opacity=75,finishOpacity=100);";
     title.style.opacity = "0.75";//透明
     //title.style.border="1px solid " + bordercolor;//边框
     title.style.height = "25px";//高度
     title.style.font = "12px Verdana, Geneva, Arial, Helvetica, sans-serif";//字体属性
     //title.style.color = "red";//文字颜色
     title.style.cursor = "move";//鼠标样式
     $.ajax({
      type:"post",
       url:"ShowDetail?Cno="+Cno,             
       dataType:"json",                 
       success:function(data){                 
       },error:function(){                       
       alert("请求出错");
       }});
     title.innerHTML="<table border='0' width='100%'><tr><td align='center'>收银小票单</td><td align=\"right\"><a href='#' onclick='closeDiv()'>关闭</a></td></tr><tr><td align='center'>时间:</td></tr><tr><td align='left'>三得利青柠水</td></tr></table>";
     msgObj.appendChild(title);//在提示框中增加标题 
}
//添加关闭功能
function closeDiv() 
{
    var msgTitelObject = document.getElementById("msgDiv");
    document.body.removeChild(msgTitelObject);
    var bgObj = document.getElementById("bgObj");
    document.body.removeChild(bgObj);
}
</script> 
</head> 
  <body>
  <ul class="iptgroup">
    <li>开始日期:</li>
    <li><input type="text" readonly="readonly" class="doubledate ipticon"/></li>
    <li style="width:20px;"></li>
    <li>结束日期:</li>
    <li><input type="text" readonly="readonly" class="doubledate ipticon"/></li>
</ul>
  <form action="FF" method="get" name="myform" id="myform">
  <div class="upleft"><img src="image/tu4.gif"  width="130" height="130" border="0" /></div>
  <div class="upright"><br><br><br><center><font face="楷体"color="#000000" size=5><strong>您的消费账单:</strong></font></center></div>
    <div class="center">
……………………………………………………………………………… 
    </table>
       </div>
    </form>
  </body>
</html> 

3个回答

不要重复导入jquery框架,你在导入会导致你的kuiDate扩展被覆盖掉了。当然还需要注意jquery版本兼容性的问题,2+不兼容ie8-

showbo
支付宝加好友偷能量挖 回复baidu_15238971: 被覆盖了。和版本没关系,你最后有导入了一个jq,会覆盖第一次jq导入的扩展
大约 5 年之前 回复
baidu_15238971
baidu_15238971 报错就是说kuidate被覆盖了,那是版本原因么??
大约 5 年之前 回复

alertWin这个方法中的ajax是异步请求的,ajax后面的代码跟ajax的success分支的代码是在两个线程中执行的。
祝好!

wojiushiwo945you
毕小宝 回复baidu_15238971: 具体的你百度下ajax的请求原理看看。你发布的这个问题可能就是ajax的异步返回导致的,建议你添加参数async:false再试试。祝好!
大约 5 年之前 回复
wojiushiwo945you
毕小宝 回复baidu_15238971: 就是你的alertWin方法的除了ajax调用之外的其它代码是在一个线程中执行的,ajax的回调函数的执行是在另一个线程中执行的。异步就是不等ajax请求返回,禁掉ajax的异步,添加参数async:false。
大约 5 年之前 回复
baidu_15238971
baidu_15238971 我不太明白啊。。。能解释的详细点么。。刚接触js和ajax
大约 5 年之前 回复

没看明白你说的两个js指什么,不过这里引入了两个jquery干嘛用呢 jquery-1.4.2.min.js和jquery-1.10.2.js

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问