如何将JavaScript的变量转换成Java变量

网上关于这方面的资料不多,普遍的方法为通过一个隐藏的表单传送JS的变量。哪位大佬能写个这个转换的代码~

    var UD = getUrlParam('userId');
    document.form.UD2.value = UD;   
</style>
<body>
    <form  method="post" action="UserDetail.jsp" id ="passForm"> 
     <input id = "UD2" type = "hidden" name="UD2"> 
     </form>
     var formObj = document.getElementById('passForm');
     formObj.submit();
<%
    request.setCharacterEncoding("utf-8");
    String UD3 = request.getParameter("UD2");%>

通过网上的方法,即将UD转成UD3,无论怎么跑UD3的值都是null,求助求助~

2个回答

你首先要知道同一个页面中,后台<% %>代码永远是在服务器端先执行的,后台代码执行后才把页面传到客户端浏览器。
页面传到浏览器之后才开始执行前端的js代码,这时后台<% %>代码已经不存在了。

所以前端js的变量是不可能转换成同一个页面中后台变量的。
只能通过表单或ajax传送JS的变量到另一个页面的后台<% %>代码中。

</style>
<body>
    <form  method="post" action="xxxxx.jsp" id ="passForm">
     <input id = "UD2" type = "hidden" name="UD2">
     </form>
<script type="text/javascript">
var UD = getUrlParam('userId');
var formObj = document.getElementById('passForm');
formObj.UD2.value = UD;
formObj.submit();
</script>

在xxxxx.jsp页面中获取

<%
    request.setCharacterEncoding("utf-8");
    String UD3 = request.getParameter("UD2");
%>

String UD3 = request.getParameter("UD3");%>

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何从文本文件中获取整数数据作为Javascript变量?

<div class="post-text" itemprop="text"> <p>I've found a php script to count my sites downloads. It saves downloads counts in a txt file as integer type. Like the count.txt contains only "109", means file was downloaded 109 times. I want to show the download counts using native javascript. Not PHP. just want to get the integer data from the txt file as variable. Is it posssible? if possible, how?</p> <p>PHP Script is:</p> <pre><code>&lt;html&gt; &lt;head&gt; &lt;meta http-equiv="refresh" content="0;url=1.jpeg"&gt; &lt;/head&gt; &lt;body&gt; &lt;?php $fp = fopen("Count.txt", "r"); $count = fread($fp, 1024); fclose($fp); $count = $count + 1; $fp = fopen("Count.txt", "w"); fwrite($fp, $count); fclose($fp); ?&gt; &lt;/body&gt; &lt;/html&gt; </code></pre> </div>

Kettle 6 设置变量 获取变量

使用Kettle 6。转换 如何在Javascript 里给命名参数设置值。 使用工作里的设置变量,总提示无法在当前转换中使用,怎么解决。 使用Java调用转换时,获取日志除了下面这种方式 KettleLogStore.getAppender().getBuffer().toString() 还有其他方式直接获取到异常输出吗

JS 全局变量 转 局部变量的问题

[code="java"]function fu1(name,id) { this.name = name; this.id = id; } fu1("aaa",1) alert(name+"-"+id);[/code] 不改变fu1结构,如何让name,id成局部变量?

javascript与java变量转换的问题,急求

<p><span style="font-size: x-small;">&lt;% List&lt;String&gt; list = (List)session.getAttribute("list") ;  %&gt;</span></p> <p> </p> <p><span style="font-size: x-small;">&lt;script&gt;</span></p> <p><span style="font-size: x-small;">function A(b){  </span></p> <p><br><span style="font-size: x-small;">if(&lt;%=list.size()&gt;0%&gt;){</span></p> <p><br><span style="font-size: x-small;">    for(var i=0;i&lt;&lt;%=list.size()%&gt;;i++){</span></p> <p><span style="font-size: x-small;">         我想判断 b  是否在 list 中 ,如果写 &lt;%= list%&gt;.get(i)  会报错。 </span></p> <p><span style="font-size: x-small;">    }<br></span></p> <p><span style="font-size: x-small;">}</span></p> <p> </p> <p><span style="font-size: x-small;">&lt;/script&gt;</span></p> <p><span style="font-size: small;">我是想判断一下权限的,如果b在list中 就可以跳转,else alert(无权)</span></p> <p> </p> <p><span style="font-size: small;">求各位帮忙啦</span></p>

java正则截取出javascript中的json代码片段。

在做爬虫的时候,爬出一个页面大量包含 var aa = {json_aa}; var bb= {json_bbb}; var cc = {json_cccc}; JAVA中如何用正则表达式截取出某个JS定义的JSON对象,如bb变量后的{json_bbb}; 数据用来转换JAVA对象进行处理。 谢谢!

请问如何在weblogic环境下JS怎么将CST时间转换成UTC时间,有遇到过的朋友没?

我现在在本地tomcat环境下可以是将CST时间转换成UTC时间,如: var cstDate=CSTDate;(这是一个变量值,其中值为:Sun Mar 31 00:00:00 CST 2013,但这个地方不知道是String型还是Date型,感觉比较困惑) var date=new Date(cstDate);这样在tomcat下是可以转换的,显示结果为:Sun Mar 31 14:00:00 UTC+0800 2013; 但是当我把程序部署到weblogic后,就不能转换了,显示为:NAN; 顺便测试了下,在weblogic下,var date=new Date("Sun Mar 31 00:00:00 CST 2013");可以转换,但当我换成那个变量CSTDate时就不能转换了,所以前面应该不是String型;但也具体不知道是什么Date型,还有CST时间不能直接使用getMonth()方法吧,我最终的目的是得到这个时间的月份,求大神解答,谢谢!

Response Header中Date格式转换

客户端,我在请求头拿到的时间格式是这样的“Mon, 06 Aug 2018 15:09:39 GMT”,我想转换成2018:01:02 12:12:12,这种格式, 我试了好几种方法,new date(Mon, 06 Aug 2018 15:09:39 GMT),这种拿到的是客户端时间,用js或jquery应该怎么转换格式

js里面json和Object对象的区别?

json不是一个字符串?在后台传数据回来用的JSON.parse()转换成js对象,但是直接在js里面定义json如果是字符串的话为什么可以用json.属性 来获取里面的值? 表示现在都搞混了 一看到方法里面传参是{"key","value"}形式的 我就在想它到底是json还是Object?有大牛能详细的解答一下么

ext 如何根据对象名称,来或得对这个对象的实例呢??类名是作为参数传递来的字符串

ext 如何根据对象名称,来或得对这个对象的实例呢??类名是作为参数传递来的字符串 类似于java里面的反射机制. 如何弄?? 也就是在javascript里面如何将字符串转化为类名

JS字符串赋值空值的问题

``` <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String infoId=request.getParameter("InfoId")==null?"":request.getParameter("InfoId"); %> <html> <head> <script type="text/javascript"> function initPage(){ //签单日期 var now = new Date(); var year = now.getFullYear(); var month = now.getMonth(); var day = now.getDate(); var monthStr = parseInt(month); var monthStr = monthStr + 1; if(day<10){ day = '0' + day; } if(monthStr<10){ monthStr = '0' + monthStr; } var billdateStr = year + '-' + monthStr + '-' + day; document.getElementById('billDate').value=billdateStr; //起保日期 now = new Date((now/1000+86400)*1000); year = now.getFullYear(); month = now.getMonth(); day = now.getDate(); monthStr = parseInt(month); monthStr = monthStr + 1; if(day<10){ day = '0' + day; } if(monthStr<10){ monthStr = '0' + monthStr; } var startdateStr = year + '-' + monthStr + '-' + day; document.getElementById('startDate').value=startdateStr; } function doSubmit(){ var reg = /^\d{4}-\d{1,2}-\d{1,2}$/; var billDate = document.getElementById('billDate'); var startDate = document.getElementById('startDate'); var paid = document.getElementById('paid'); var zhekou = document.getElementById('zhekou'); var insurce_flag = document.getElementById('insurce_flag'); var ab = document.getElementById('ab'); var dianxiao = document.getElementById('dianxiao'); var szx = document.getElementById('szx'); var csx = document.getElementById('csx'); var dqx = document.getElementById('dqx'); var csry = document.getElementById('csry'); var vin = document.getElementById('vin'); var model = document.getElementById('model'); if(paid == null || paid.value.length == 0){ alert("请录入保费信息"); return; } if(!reg.test(startDate.value)){ alert("请录入正确的日期格式"); return; } if( szx == null || szx.value.length == 0){ alert("请录入三者险保费信息"); return; } if( vin == null || vin.value.length == 0){ alert("请录入车架号"); return; } if( model == null || model.value.length == 0){ alert("请录入车型"); return; } alert(insurce_flag.value); if(insurce_flag.value == "R"){ insurce_flag.value = '续保'; }else{ insurce_flag.value = '转保'; } alert(insurce_flag.value); var enCodeMsg = "签单时间:" + billDate.value + "★起保时间:" + startDate.value + "★商业险保费:" + paid.value + "★无赔款折扣:" + zhekou.value + "★新转续:" + insurce_flag.value + "★AB类业务类型:" + ab.value + "★渠道:电销★车型:" + model.value + "★本年度三者保额:" + szx.value + "★本年度车损险:" + csx.value + "★本年度盗抢险:" + dqx.value + "★车上人员:" + csry.value + "★车架号:" + vin.value; document.getElementById('enCodeMsg').value=enCodeMsg; document.form1.submit(); } </script> <title>TEST</title> </head> <body onload="initPage();"> <center><table id="table1" width="80%" border='1'> <tr> <td>签单时间</td> <td><input type="text" name="billDate" id='billDate' readonly='ture'></td> </tr> <tr> <td>起保时间</td> <td><input type="text" name="startDate" id='startDate' ></td> </tr> <tr> <td>商业险保费</td> <td><input type="text" name="paid" id='paid' ></td> </tr> <tr> <td>无赔款折扣</td> <td><select name="zhekou" id="zhekou"> <option value="1">出险0次</option> <option value="0">新保</option> <option value="-1">出险1次</option> <option value="-2">出险2次</option> <option value="-3">出险3次</option> <option value="-4">出险4次</option> </select> </td> </tr> <tr> <td>新转续</td> <td><select name="insurce_flag" id="insurce_flag"> <option value="R">续保</option> <option value="T">转保</option> </select> </td> </tr> <tr> <td>AB类业务</td> <td><select name="ab" id="ab"> <option value="A">A</option> <option value="B">B</option> </select> </td> </tr> <tr> <td>渠道</td> <td><select name="dianxiao" id="dianxiao" disabled="disabled"> <option value="dianxiao">电网销</option> </select> </td></td> </tr> <tr> <td>三责保额</td> <td><input type="text" name="szx" id='szx'></td> </tr> <tr> <td>是否承保车损险</td> <td><select name="csx"> <option value="10000">是</option> <option value="0">否</option> </select> </td> </tr> <tr> <td>是否承保盗抢险</td> <td><select name="dqx"> <option value="10000">是</option> <option value="0">否</option> </select> </td> </tr> <tr> <td>车上人员保额</td> <td><select name="csry"> <option value="10000">是</option> <option value="0">否</option> </select> </td> </tr> <tr> <td>车型</td> <td><input type="text" name="model" id='model'></td> </tr> <tr> <td>车架号</td> <td><input type="text" name="vin" id='vin'></td> </tr> <tr> </tr> <tr> </tr> </table> <br> <br> <font size="15" color="red">结果</font><br> <textarea name="a" style="width:600px;height:100px;"></textarea> <br> <form name='form1' action="http://10.36.10.35/cpicjx/crmServices.svr?apicode=000002&type=carReportMessage&type01=requestMoneyRule" method="Post"> <input type="hidden" id="enCodeMsg" name="enCodeMsg"> <input type = "button" value="费用查询" onclick = "doSubmit();">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type = "button" value="费用申请" onclick = "doSubmit();"> </form> </center> <!--<form name='form1' action="<%=request.getContextPath() %>/index.jsp" method="Post"> <input type="hidden" id="needAlterInfoId" name="InfoId"> <input type="button" onclick="doSubmit();" value="Submit"> </form> <table id="showAlter" style="display: none"> <tr> <td><font size="2" >您选择的需要修改的记录的ID是:</font> </td> <td><%=infoId %> </td> </tr> </table> --> </body> </html> ``` 可以进入判断,但出来的insurce_flag空值,求助大神解决!

js 里XML读取数据\或者转换城FROM

js里我var data 这个变量得到一下数据,我读取数据,该怎么写。或者转换城from表单 列如;<from action="XX" method="post"> <input type="text" name="country" vlaue="3"/> </from> 下面是XML数据 <form level="0"> <row> <country>3</country> <orderid>dsfdsf</orderid> <customerid>sdf</customerid> <orderdate>2012.02.21</orderdate> <requireddate>2012.02.22</requireddate> <freight>f</freight> <shipname>sdf</shipname> <shipcity>sdfds</shipcity> <shipaddress>dsfdsf</shipaddress> </row> </form>

各位大佬,关于PHP转换json之后,js接收报错,求解!

我的测试代码,在自己电脑上运行是运行的 ``` <?php // header("content-type:text/html;charset=utf-8"); // header("Access-Control-Allow-Origin:*"); // header('Access-Control-Allow-Methods:POST'); // header('Access-Control-Allow-Headers:x-requested-with, content-type'); // header("Content-Security-Policy: upgrade-insecure-requests"); require_once(dirname(__FILE__) . './db-test/config.php'); header("Content-type: text/html; charset=utf-8"); error_reporting(0); //创建数据库连接 $mysqli = new Mysqli($dbhost, $dbuser, $dbpass, $dbname); if ($mysqli->connect_error) { die('connect error:' . $mysqli->connect_errno); } $method = !empty($_REQUEST['method']) ? trim($_REQUEST['method']) : ''; //获取时间 if ($method == "query") { $begin_time = $_GET['begin_time']; $begin = $begin_time; $finish_time = $_GET['finish_time']; $finish = $finish_time; //转换为时间戳 $begin_time = strtotime($begin_time); $finish_time = strtotime($finish_time); $selected = $_GET['selected']; //选择的 if ($selected=="jiaye"){ $sql = "SELECT * FROM wx_user where source <>'yunfeng' AND (subscribe_time>('$begin_time')) and subscribe_time<'$finish_time' ;"; }else{ $sql = "SELECT * FROM wx_user where source='yunfeng' AND (subscribe_time>('$begin_time')) and subscribe_time<'$finish_time';"; } $result = $mysqli->query($sql); $results = array(); while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { $results[] = $row; } $arr = json_encode($results,JSON_UNESCAPED_UNICODE); //echo($arr); } else { //默认筛选 //上个月的时间戳 $last_month = strtotime(date('Y-m-01 00:00:00',strtotime('-1 month'))); //获取今日开始时间戳和结束时间戳 $endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1; $result = $mysqli->query("select * from wx_user where source='yunfeng' AND (subscribe_time>('$last_month')) and subscribe_time<'$endToday' "); $results = array(); while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { $results[] = $row; } $arr = json_encode($results,JSON_UNESCAPED_UNICODE); } ?> <html> <head> <!-- 设置HTML5编码--> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport"> <!-- 设置HTML5编码--> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <!-- <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"/> --> <title>用户关注数据</title> <!-- 最新版本的 Bootstrap 核心 CSS 文件 --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <link href="https://cdn.bootcss.com/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css" rel="stylesheet"> <link href="//cdn.bootcss.com/bootstrap-table/1.11.1/bootstrap-table.css" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.1.1/jquery.min.js"></script> <script src="https://unpkg.com/tableexport.jquery.plugin/tableExport.min.js"></script> <script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script> <script src="https://cdn.bootcss.com/moment.js/2.18.1/moment-with-locales.min.js"></script> <script src="https://cdn.bootcss.com/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script> <script src="//cdn.bootcss.com/bootstrap-table/1.11.1/bootstrap-table.js"></script> <script src="//cdn.bootcss.com/bootstrap-table/1.11.1/locale/bootstrap-table-zh-CN.js"></script> <style> .Connection { display: inline-block; position: relative; margin: 0 5px 0 0; } </style> </head> <body> <h2 class="text-center"> <?php $selected = $_GET['selected']; if ($selected=="jiaye"){ echo "嘉业关注用户"; }else{ echo "云蜂关注用户"; } ?> </h2> <div class="Connection"> <div class="cell-left"> </div> </div> <div class="Connection"> <div class="cell-left"> <div class="form-group"> <select class="form-control" id="selected"> <option value="yunfeng">云蜂</option> <option <?php $selected = $_GET['selected']; if($selected==='jiaye'){ echo 'selected';}?> value="jiaye" >嘉业</option> </select> </div> 请选择起始日期: <input type='text' class="form-control" id='datetime1' style="width:200px; placeholder=" value="<?php echo $begin; ?>"""/> </div>       </div> <div class="Connection"> <div class="cell-left"> 请选择结束日期: <input type='text' class="form-control" id='datetime2' style="width:200px; placeholder=" value="<?php echo $finish; ?>"""/> </div>    </div> <div class="Connection"> <div class="cell-left"> <button class="btn btn-default" onclick="GetTime()">提交</button>    </div>   </div> <div class="Connection"> <div class="cell-left">     <button class="addBtn btn btn-default" id="exportTable"> 导出当前表格数据 </button>     </div>     </div> <script> function trim(str){ return str.replace(/(^\s*)|(\s*$)/g, ""); } $(function () { $("#datetime1").datetimepicker({ format: 'YYYY-MM-DD ', locale: moment.locale('zh-cn') }); $("#datetime2").datetimepicker({ format: 'YYYY-MM-DD ', locale: moment.locale('zh-cn') }); }); var new_data = ""; function GetTime() { var selected= $("#selected").val(); var a = $(" #datetime1").val(); var b = $(" #datetime2").val(); var a= trim(a); var b= trim(b); // alert("第一个输入框" + a) //alert("第二个输入框" + b) location.href = "admin_weixin_subscribe_yunfeng.php?method=query&selected="+selected+"&begin_time=" + a + "&finish_time=" + b; } </script> <div class="table-responsive"> <table id="mytab" class="table table-striped table-bordered"> </table> </div> <script type="text/javascript"> var arr =<?php echo $arr;?>; $(function () { $('#mytab').bootstrapTable({ data: arr, dataType: 'json', queryParams: "queryParams", showColumns: true, //测试 新加 //showRefresh: true, //是否显示刷新按钮 toolbar: "#toolbar", //工具按钮用哪个容器 // editable:true; editable: true, clickEdit: true, showExport: true, sidePagination: "true", //分页方式:client客户端分页,server服务端分页(*) //striped: true, // 是否显示行间隔色 search: true, method: 'GET', //请求方式(*) //search : "true", //是否显示表格搜索 uniqueId: "ID", //每一行的唯一标识,一般为主键列 pageSize: "20", pageList: [10, 25, 50, 100, 'All'], //可供选择的每页的行数(*) pagination: true, // 是否分页 sortable: true, // 是否启用排序 clickToSelect: true, //是否启用点击选中行 columns: [ [{ "title": "<?php $selected = $_GET['selected']; if ($selected=="jiaye"){ echo "嘉业关注用户"; }else{ echo "云蜂关注用户"; } ?>", "halign": "center", "align": "center", //合体了5个列 "colspan": 13 } ], [{ field: 'openid', title: 'openid', sortable: true }, { field: 'nickname', title: '用户昵称', sortable: true, }, { field: 'userid', title: '序号', sortable: true, }, { field: 'subscribe_time', title: '时间戳', sortable: true, }, { title: '最后关注时间',//标题 可不加 edit: false, sortable: true, formatter: function (value, row, index) { return new Date(parseInt(row.subscribe_time) * 1000).toLocaleString().replace(/:\d{1,2}$/, ' '); } }, { field: 'sex', title: '性别', sortable: true, }, { field: 'language', title: '国别', sortable: true, }, { field: 'city', title: '所在国家', sortable: true, }, { field: 'province', title: '所在省份', sortable: true, }, { field: 'country', title: '所在城市', sortable: true, }, { field: 'mark', title: '备注', sortable: true, }, { field: 'subscribe_scene', title: '添加渠道', sortable: true, }, ] ] }); $("#exportTable").click(function () { //导出 $("#mytab").tableExport({ type: "excel", escape: "false", fileName: 'XX-XX关注信息' }); }); }); </script> </body> </html> ``` 运行结果:![图片说明](https://img-ask.csdn.net/upload/201907/08/1562576383_105519.jpg) 然后把代码放到公司服务器上,就报错![图片说明](https://img-ask.csdn.net/upload/201907/08/1562576482_194553.jpg) 非常非常奇怪、,,我看了数据库格式都是UTF-8 就是 script 那里不能把php解析的json给js 变量。。 求大佬帮助!!!!!! 为什么啊,我测试的时候都能 print出 json对象啊 header也加了 我觉得逻辑完全没问题啊啊啊啊

JS正则表达式如何取下面的字符

例如像javaeye论坛这个编辑器一样的 如果我单击List按钮就会生成下面的列表 [code="java"] [list] [*] [/list] [/code] 现在我要转换成如下 <ul> <li> <ul> 但是用正则表达式子去不到换行符。。。 我下的正则表达式如下: reg = /\[list\]\n(.*?)\n\[\/list]/g; 就是没有办法取到 [code="java"] [list] [*] [/list] [/code] 取到的都是空,还望大家指点 [b]问题补充:[/b] 还是没看懂什么意思。能说清楚点吗? 我把你的代码拷贝到编辑器里运行了,弹出信息,跟我上面的要求有关吗? 孺子不教,请多指教。 [b]问题补充:[/b] 很感谢您的回复。 目前我也像您一样,做到了这样的一步 [code="java"] var list = '[list]\n[*]\n[/list]'; var reg = /\[list\]\n(.*?)\n\[\/list\]/g; [/code] 定义了上面两个变量,并且写好了如同您给我第一个回答那样的正则表达式。 我现在画面上有个按钮,就像JAVAEYE网站上编辑器中的List按钮一样(就在您给我回复的时候,上面有按钮可以按出来,有Code,有B等等)。 同样我按下List按钮,在我的textarea入力框中会显示如下代码 [code="java"] [list] [*] [/list] [/code] 我是在单击按钮的时候,直接把 [code="java"] var list = '[list]\n[*]\n[/list]'; [/code] 值写到了textarea框中,写进去的时候"list"换行显示在了textarea中,和javaeye网站的编辑器一样,换行显示了。问题是,我再去取的时候,用正则表达式去取,并想替换成 [code="java"] [ul] [li] [ul] [/code] 就怎么也取不到了,我取的方式如下: [code="java"] var str = ""; str = $("#editor_text").html();//editor_text就是textarea入力框 [/code] 用上面的正则表达式 [code="java"] var reg = /\[list\]\n(.*?)\n\[\/list\]/g; [/code] 怎么也匹配替换不到了。 但是我输入判断语句,确实又存在"\n" [code="java"] if(text.indexOf("\n") != -1) { alert("测试是否有换行!"); } [/code] 测试证明换行确实存在。 如果您还不明白,简单的说,我就是想做一个和javaeye的【list】按钮一样的功能,并且在预览的时候能看到【ul】的效果。 谢谢。 [b]问题补充:[/b] 你好。 还是不行,两个取出来的字符串是一样的。 [code="java"] var val = $("#editor_text").val(); alert(val); alert($("#editor_text").html()); [/code] 取出来的值都是 [code="java"] [list] [*] [/list] [/code] 这样的字符串 [b]问题补充:[/b] 源代码比较避讳了。实在抱歉。 你能把你写的发给我看看吗? 我这里确实取不到啊。

web开发<script>中怎么获得url的参数值并转成String?

因为疫情不能回学校,没办法查资料了,网上的资料也没太接受,请各路神仙帮帮忙,拜托拜托~ 我在高德地图copy的例子,现在我想在<script>中获取url中的参数值(图1),也就是地址,然后让它替换示例中的地址关键字(图2) 图1: ![图片说明](https://img-ask.csdn.net/upload/202005/06/1588768070_271185.png) 图2: ![图片说明](https://img-ask.csdn.net/upload/202005/06/1588768251_986374.png)

JSp+ajax用户登录验证

[img]http://dl2.iteye.com/upload/attachment/0088/2001/4ee085e5-47e0-3995-ad42-62e4a53cfc2f.png[/img] 用户登陆界面,想要实现输入账号之后离开输入框就验证该账号是否存在,输入角色、账号、密码之后,点击登录,如果正确就跳转到index.jsp,错误不跳转并且在密码输入框下显示提示信息;有一个没输入就提示,信息也是在密码输入框下。 我现在的问题是:若果什么也不输,点击登录,会闪一下,但闪过之后就是重置了页面。输入正确也是闪一下就重置页面.账号验证没问题,就是登录有问题,但是搞不定,大侠们看看吧! login.jsp [code="java"]<form id="form" name="form" method="post" action="" > <table border="0"> <tr> <td align="right">角色类型:</td> <td><select name="role" id="role" onBlur="checkRole(this)"> <option value="0">-请选择角色-</option> <% List<Role> list = new ArrayList<Role>(); RoleDao dao = new RoleDaoImpl(); list = dao.findAllRoles();//调用实现类的查询全部方法 for (int i = 0; i < list.size(); i++) { Role r = list.get(i); %> <option value="<%=r.getR_id()%>"><%=r.getR_name()%></option> <% } %> </select> </td> <td align="left"> &nbsp; <span id="roleSpan"></span> </td> </tr> <tr> <td align="right">账号:</td> <td> <input type="text" name="number" id="number" onblur="checkNumber(this)"> </td> <td width="256" align="left"> &nbsp; <span id="numberSpan"></span> </td> </tr><!-- 当输入名字后离开输入框即调用--> <tr> <td align="right">密码:</td> <td><input type="password" name="pwd" id="pwd" onBlur="checkPsw(this)" > </td> <td align="left"> &nbsp; <span id="pwdSpan"></span> </td> </tr> <tr> <td align="left">&nbsp;<span id="feedback_info"></span></td> </tr> <tr> <td colspan="1"> <input type="submit" value="登录" onclick="checkLogin(this.form)"/> <input type="button" value="注册" onclick="javascript:window.location.href='User/Register.jsp'"></td> </tr> </table> </form>[/code] login.js [code="java"]var xmlHttp; function createXMLHttpRequest() { if (window.XMLHttpRequest) { var xmlHttp = new XMLHttpRequest(); //mozilla浏览器 } else if (window.ActiveXObject) { try { var xmlHttp = new ActiveX0bject("Msxml2.XMLHTTP"); //IE老版本 } catch (e) { } try { var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //IE新版本 } catch (e) { } } if (!xmlHttp) { window.alert("不能创建XMLHttpRequest对象实例"); return false; } else return xmlHttp; ////}///////花括号放错地方 } // 检查账号,给出提示信息 function checkNumber(Number) { var numberSpan = document.getElementById("numberSpan"); if (Number.value == "") { numberSpan.innerHTML = "账号必须填写".fontcolor("red"); return false; } else { xmlHttp = createXMLHttpRequest(); //createXMLHttpRequest申明的是局部变量,这里访问不到xmlHttp,要给xmlHttp变量赋值才行 var url="servlet/CheckNumberServlet?number="+Number.value+"&LoginTime="+new Date().getTime(); url = encodeURI(url); //转换码后再传输 xmlHttp.open("GET",url,true);//加时间戳防止IE缓存 //xmlhttp.setRequestHeader( "Content-Type", "text/html;charset=UTF-8" ); xmlHttp.onreadystatechange = handleStateChange1; xmlHttp.send(null); return true; } } function handleStateChange1() { var numberSpan = document.getElementById("numberSpan"); if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { // alert("来自服务器的响应:"+xmlHttp.responseText); if (xmlHttp.responseText == 'true') {///////responseText是字符串,不能和boolean变量直接比较 // alert("存在"); numberSpan.innerHTML = "<img src='Img/g.gif'>"; document.getElementById("feedback_info").innerHTML=""; return true; } else if (xmlHttp.responseText == 'false') {///////responseText是字符串,不能和boolean变量直接比较 // alert("不存在"); numberSpan.innerHTML = "账号不存在".fontcolor("red"); return false; } } else alert("服务器端错误"); } } // 检查密码,给出提示信息 function checkPsw(pswNode) { var spanNode1 = document.getElementById("pswSpan"); var Role= document.getElementById("role"); var Number= document.getElementById("number"); if (pswNode.value == "") { spanNode1.innerHTML = "密码必须填写".fontcolor("red"); return false; } else { pwdSpan.innerHTML = "<img src='Img/g.gif'>"; document.getElementById("feedback_info").innerHTML=""; return true; } } // 检查是否选中角色 function checkRole(selNode) { var index = selNode.selectedIndex;// 获得选中下标 var spanNode1 = document.getElementById("roleSpan"); if (index <= 0) { spanNode1.innerHTML = "必须选择角色".fontcolor("red"); return false; } else { spanNode1.innerHTML = "<img src='Img/g.gif'>"; document.getElementById("feedback_info").innerHTML=""; return true; } } // 检查表单 function checkLogin(o) { var Role=o.role; var Number= o.number; var Pwd= o.pwd; if(checkNumber(Number)&&checkPsw(Psw) &&checkRole(Role)) { xmlHttp = createXMLHttpRequest(); //createXMLHttpRequest申明的是局部变量,这里访问不到xmlHttp,要给xmlHttp变量赋值才行 var url="servlet/CheckLoginServlet?number="+Number.value+"&role="+Role.value+"&pwd="+Pwd.value+"&LoginTime="+new Date().getTime(); url = encodeURI(url); //转换码后再传输 xmlHttp.open("GET",url,true);//加时间戳防止IE缓存 //xmlhttp.setRequestHeader( "Content-Type", "text/html;charset=UTF-8" ); xmlHttp.onreadystatechange = handleStateChange2; xmlHttp.send(null); return true; } else{ document.getElementById("feedback_info").innerHTML="请填写每一项".fontcolor("red"); return false; } } function handleStateChange2() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { //alert("来自服务器的响应:" + xmlHttp.responseText); if(xmlHttp.responseText == '0'){ document.getElementById("feedback_info").innerHTML="账号与密码不匹配".fontcolor("red"); return false; } else if(xmlHttp.responseText == '1'){ document.getElementById("feedback_info").innerHTML=""; window.location.href="index.jsp"; return true; } } else alert("服务器端错误"); } }[/code] chuckLoginservlet [code="java"]public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); doPost(request, response);// 调用doPost方法 } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=UTF-8"); String number=""; try { number = new String(request.getParameter("number").getBytes( "ISO-8859-1"), "UTF-8"); } catch (Exception e1) { System.out.println("number为空"); } String role="0"; int rID=0; try { role = new String(request.getParameter("role").getBytes( "ISO-8859-1"), "UTF-8"); rID=Integer.parseInt(role);//把获得的role的值转成整型 } catch (Exception e1) { System.out.println(request.getParameter("role")+"******role"); } String pwd=""; try { pwd = new String(request.getParameter("pwd").getBytes( "ISO-8859-1"), "UTF-8"); } catch (Exception e) { System.out.println(request.getParameter("pwd")+"****pwd"); } // String txt = new String(number.getBytes("ISO-8859-1"), "UTF-8"); // System.out.println(txt+"********"); PrintWriter out = response.getWriter(); User u = new User(); UserDao ud = new UserDaoImpl(); u = ud.findUserByNumber(number);//通过账号找到用户对象 if (u != null) {// 找到该用户 int u_id = u.getU_id();// 获得该用户的ID UserRole ur = new UserRole(); UserRoleDao urd = new UserRoleDaoImpl(); ur = urd.findUserRoleByUserId(u_id);// 找到中间表UserRole的记录 int r_id = ur.getRole().getR_id();// 由Userrole表找到Role表的相对应角色名称 if (r_id==rID && u.getU_password().equals(pwd))// 如果数据中的角色和密码与之对应 { out.write("1");//1表示验证通过 } else { out.write("0");//0表示密码与账号不匹配 } } out.flush(); out.close(); }[/code]

动态添加name属性相同的select2标签多选下拉框 如何取值和赋值

**问题描述:** 所有下标值混合一块 ; **需要实现的效果:** 心 肺 小肠 对应id 分别1、2、3 作为一组 xuewei_id[0] 第二行 对应下标为 xuewei_id[1] ![图片说明](https://img-ask.csdn.net/upload/201808/01/1533115383_492903.png) ![图片说明](https://img-ask.csdn.net/upload/201808/01/1533116123_928546.png) 图3 这个是直接接受 select2 标签的穴位id ![图片说明](https://img-ask.csdn.net/upload/201808/01/1533116308_133310.png) js代码 ``` // 显示修改关键字症状界面 function updateView(id, system_id) { $("#btntype").val(1); $("#Submit1").click(function() { add(1); }); $ .ajax({ type : "POST", url : "/erzhentang/manage/forAjax.do?requestType=12.1", data : "id=" + id + "&system_id=" + system_id, // 发送到服务器的数据默认id是结论id success : function(msg) { $("#xuewei_id").val("1,2,3").select2(); /* alert(msg); */ var json = eval('(' + msg + ')'); document.getElementById("addModel").style.display = "block"; document.getElementById("id1").value = json.earScanJielun.id; document.getElementById("system_id1").value = json.earScanJielun.system_id; /* 遍历所属系统下所有 耳穴频扫疾病项 */ var arrESJ = eval(json.listEarScanJibing);// arrESJ是一个数组 var checkESJ = document.getElementById("jibing_num1"); var str2 = ""; for (var j = 0; j < arrESJ.length; j++) { str2 += "<option value=\"" + arrESJ[j].jibing_num + "\">" + arrESJ[j].name + "</option>"; var checkESJ2 = arrESJ[j].name; if (arrESJ[j].jibing_num == json.earScanJielun.jibing_num) {// 疾病编号人为控制每个编号都是唯一 arrESJ[j].name = "selected='selected'"; } $("#jibing_num1").html(str2); } document.getElementById("jibing_num1").value = json.earScanJielun.jibing_num; document.getElementById("jielun_rank1").value = json.earScanJielun.jielun_rank; document.getElementById("jielun1").value = json.earScanJielun.jielun; /* 下半截部分组合表动态展示修改和添加 */ var arrESC = eval(json.listEarScanCp);// arrESC是一个数组频扫结论组合表 var str = ""; var str1 = ""; for (var i = 0; i < arrESC.length; i++) { str += "<tr>"; str += "<td colspan=\"8\">"; str += "<div style=\"margin-left: 148px;\" id=\"earScanCp\">"; str += "<div style=\"float: left;\">"; str += "<textarea style=\"width: 50px;margin-left: -86px;position: absolute;\" id=\"cp_id\" name=\"cp_id\" >" + arrESC[i].id + "</textarea>"; str += "<select style=\"width: 60px;height: 36px;margin-left: 20px;\" id=\"gender\" name=\"gender\" >" var myselect = document.getElementById("gender");// 这个获取的是静态jsp页面里标签 /* * 下拉框主要是应展示项和所有下拉选项的值判断是否对应 分清主和客 * 所有展示项目为主表客表的某一项值和遍历主表的值对应 这里面 下拉框所有选项值是主表 */ var str1 = ""; for (var j = 0; j < myselect.options.length; j++) {// 下拉框是主家从静态页面获取并且遍历它 // alert("j值:" + myselect.options[j].value); str += "<option value=\"" + myselect.options[j].value + "\" " + (myselect.options[j].value == arrESC[i].gender ? "selected='selected'" : "") + ">" + myselect.options[j].text + "</option>"; } "</select>"; str += "<textarea style=\"width: 50px;margin-left: 10px;\" id=\"min_age\" name=\"min_age\" >" + arrESC[i].min_age + "</textarea>"; str += "<textarea style=\"width: 50px;margin-left: 10px;\" id=\"max_age\" name=\"max_age\" >" + arrESC[i].max_age + "</textarea>"; // str += "<textarea style=\"width: // 300px;margin-left:10px;\" id=\"xuewei_id\" // name=\"xuewei_id\" >" // + arrESC[i].xuewei_id + "</textarea>"; // str +="<div id=\"selectSection\">"; /* * id=\"xuewei_id\" */ str += "<textarea style=\"width:300px;margin-left:10px;display:none;\" id=\"xuewei_id1\" name=\"xuewei_id1\" >" + arrESC[i].xuewei_id + "</textarea>"; // str += "<div id=\"selectSection\" name=\"selectSection\">"; str += "<select style=\"width: 300px;margin-left:10px;\" name=\"xuewei_id\"class=\"combox\" multiple >" str += "<optgroup label=\"小辈儿组\">"; str += "<option value=\"1\" " + "selected='selected'" + ">心</option>"; str += "<option value=\"2\" " + "selected='selected'" + ">" + "肺" + "</option>"; str += "<option value=\"3\" " + "selected='selected'" + ">" + "小肠" + "</option>"; str += "<option value=\"4\">" + "口" + "</option>"; str += "<option value=\"5\">" + "食道" + "</option>"; str += "</optgroup>"; // str += "</div>"; /* 进一步转换频扫组合表穴位id字符串转array数组 */ /* * var strXueweiId = arrESC[i].xuewei_id; var * arrayXueweiId = strXueweiId.split(","); * * for (var j = 0; j < arrayXueweiId.length; j++) { str2 += "<option * value=\"" + arrayXueweiId[j].value + "\">" + * arrayXueweiId[j].value + "</option>"; var checkESJ2 = * arrayXueweiId[j].name; if (arrayXueweiId[j] == 5) { * arrayXueweiId[j] = "selected='selected'"; } * $("#jibing_num1").html(str2); } */ "</select>"; // // $("#xuewei_id").val("1,2,3").select2(); str += "<textarea style=\"width: 220px;margin-left: 10px;\" id=\"chuzhen_id\" name=\"chuzhen_id\" >" + arrESC[i].chuzhen_id + "</textarea>"; str += "<select style=\"width: 60px;height: 36px;margin-left: 10px;\" id=\"bp\" name=\"bp\" >" var myselect1 = document.getElementById("bp");// 这个获取的是静态jsp页面里标签 for (var k = 0; k < myselect1.options.length; k++) {// 下拉框是主家从静态页面获取并且遍历它 // alert("j值:" + myselect1.options[k].value); str += "<option value=\"" + myselect1.options[k].value + "\" " + (myselect1.options[k].value == arrESC[i].bp ? "selected='selected'" : "") + ">" + myselect1.options[k].text + "</option>"; } "</select>"; str += "<textarea style=\"width: 50px; height: 36px;margin-left: 10px;margin-top: 0px;\" id=\"jielun_conform\" name=\"jielun_conform\">" + arrESC[i].jielun_conform + "</textarea>"; str += "</div>"; str += "<div >"; str += " <input type=\"button\" onclick=\"delRow(this," + arrESC[i].id + "," + arrESC[i].bianzhengId + ")\" value=\"删除\" id=\"deleteESC\" name=\"deleteESC\" style=\"float: left; margin-left:10px; margin-top: 5px;\">"; str += "</div>"; str += "</div>"; str += "</td>"; str += "</tr>"; /* 替换静态页面 */ $("#tbody1").html(str); select2Execute(); } } }); } ``` 执行select2方法 ``` /* 执行select2方法 */ function select2Execute() { $(function() { $("select[name='xuewei_id']").select2({ // $('select[id="xuewei_id"]').select2({ // $('#xuewei_id').select2({ // $("#selectSection").find("select.combox").select2({ // $(".select2-selection__choice").select2(); // $(".combox").select2({ placeholder : "请至少选择一个人名", tags : true, createTag : function(decorated, params) { return null; }, width : '256px' }); function formatState(state) { if (!state.id) { return state.text; } var $state = $('<span>' + state.text + '</span>'); return $state; } ; $('#sel_recommender').select2({ placeholder : "请选择一个人名", templateResult : formatState, width : '256px' }); alert($("select[name='xuewei_id']").select2('data')[0].text); // $("#selectSection").find("select.xuewei_id").val(); // document.getElementById("selectSection").value=$("select[name='xuewei_id']").select2('data'); $("#xuewei_id1").val( $("select[name='xuewei_id']").select2('data'));//赋值给textarea隐藏的标签 alert($("#xuewei_id1").val()); }); } ```

PDFJS加载流预览PDF不展示问题

![问题页面](https://img-ask.csdn.net/upload/201905/20/1558349352_654591.png)![其他都正常](https://img-ask.csdn.net/upload/201905/20/1558349356_339766.png) 问题:引入PDF.JS加载流预览PDF附件,结果页面数据无法展示(图一),其余都可用;并且预览模式可以显示(图二),请问这是什么问题啊?怎么解决? 谢谢~~~ PDF.JS版本(1.9.426) 页面HTML ``` <%@ page pageEncoding="utf-8" contentType="text/html; charset=utf-8"%> <link rel="stylesheet" href="<%=request.getContextPath()%>/skin/js/pdfjs/web/viewer.css"> <link rel="resource" type="application/l10n" href="<%=request.getContextPath()%>/skin/js/pdfjs/web/locale/locale.properties"> <script type="text/javascript"> var DEFAULT_URL = "";//注意,删除的变量在这里重新定义 var PDFData = ""; $.ajax({ type:"post", async:false, // mimeType: 'text/plain; charset=x-user-defined', url:'publicworkindex.cmd?method=getPdfOutputStream', data:{'doc_id':${htmldata.STORE_ID}}, success:function(data){ PDFData = data; } }); var rawLength = PDFData.length; //转换成pdf.js能直接解析的Uint8Array类型,见pdf.js-4068 var array = new Uint8Array(new ArrayBuffer(rawLength)); for(i = 0; i < rawLength; i++) { array[i] = PDFData.charCodeAt(i) & 0xff; } DEFAULT_URL = array; </script> <script src="<%=request.getContextPath()%>/skin/js/pdfjs/build/pdf.js"></script> <script src="<%=request.getContextPath()%>/skin/js/pdfjs/web/viewer.js"></script> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <meta name="google" content="notranslate"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>PDF.js viewer</title> </head> <body tabindex="1" class="loadingInProgress"> <div id="outerContainer"> <div id="sidebarContainer"> <div id="toolbarSidebar"> <div class="splitToolbarButton toggled"> <button id="viewThumbnail" class="toolbarButton toggled" title="Show Thumbnails" tabindex="2" data-l10n-id="thumbs"> <span data-l10n-id="thumbs_label">Thumbnails</span> </button> <button id="viewOutline" class="toolbarButton" title="Show Document Outline (double-click to expand/collapse all items)" tabindex="3" data-l10n-id="document_outline"> <span data-l10n-id="document_outline_label">Document Outline</span> </button> <button id="viewAttachments" class="toolbarButton" title="Show Attachments" tabindex="4" data-l10n-id="attachments"> <span data-l10n-id="attachments_label">Attachments</span> </button> </div> </div> <div id="sidebarContent"> <div id="thumbnailView"> </div> <div id="outlineView" class="hidden"> </div> <div id="attachmentsView" class="hidden"> </div> </div> </div> <!-- sidebarContainer --> <div id="mainContainer"> <div class="findbar hidden doorHanger" id="findbar"> <div id="findbarInputContainer"> <input id="findInput" class="toolbarField" title="Find" placeholder="Find in document…" tabindex="91" data-l10n-id="find_input"> <div class="splitToolbarButton"> <button id="findPrevious" class="toolbarButton findPrevious" title="Find the previous occurrence of the phrase" tabindex="92" data-l10n-id="find_previous"> <span data-l10n-id="find_previous_label">Previous</span> </button> <div class="splitToolbarButtonSeparator"></div> <button id="findNext" class="toolbarButton findNext" title="Find the next occurrence of the phrase" tabindex="93" data-l10n-id="find_next"> <span data-l10n-id="find_next_label">Next</span> </button> </div> </div> <div id="findbarOptionsContainer"> <input type="checkbox" id="findHighlightAll" class="toolbarField" tabindex="94"> <label for="findHighlightAll" class="toolbarLabel" data-l10n-id="find_highlight">Highlight all</label> <input type="checkbox" id="findMatchCase" class="toolbarField" tabindex="95"> <label for="findMatchCase" class="toolbarLabel" data-l10n-id="find_match_case_label">Match case</label> <span id="findResultsCount" class="toolbarLabel hidden"></span> </div> <div id="findbarMessageContainer"> <span id="findMsg" class="toolbarLabel"></span> </div> </div> <!-- findbar --> <div id="secondaryToolbar" class="secondaryToolbar hidden doorHangerRight"> <div id="secondaryToolbarButtonContainer"> <button id="secondaryPresentationMode" class="secondaryToolbarButton presentationMode visibleLargeView" title="Switch to Presentation Mode" tabindex="51" data-l10n-id="presentation_mode"> <span data-l10n-id="presentation_mode_label">Presentation Mode</span> </button> <button id="secondaryOpenFile" class="secondaryToolbarButton openFile visibleLargeView" title="Open File" tabindex="52" data-l10n-id="open_file"> <span data-l10n-id="open_file_label">Open</span> </button> <button id="secondaryPrint" class="secondaryToolbarButton print visibleMediumView" title="Print" tabindex="53" data-l10n-id="print"> <span data-l10n-id="print_label">Print</span> </button> <button id="secondaryDownload" class="secondaryToolbarButton download visibleMediumView" title="Download" tabindex="54" data-l10n-id="download"> <span data-l10n-id="download_label">Download</span> </button> <a href="#" id="secondaryViewBookmark" class="secondaryToolbarButton bookmark visibleSmallView" title="Current view (copy or open in new window)" tabindex="55" data-l10n-id="bookmark"> <span data-l10n-id="bookmark_label">Current View</span> </a> <div class="horizontalToolbarSeparator visibleLargeView"></div> <button id="firstPage" class="secondaryToolbarButton firstPage" title="Go to First Page" tabindex="56" data-l10n-id="first_page"> <span data-l10n-id="first_page_label">Go to First Page</span> </button> <button id="lastPage" class="secondaryToolbarButton lastPage" title="Go to Last Page" tabindex="57" data-l10n-id="last_page"> <span data-l10n-id="last_page_label">Go to Last Page</span> </button> <div class="horizontalToolbarSeparator"></div> <button id="pageRotateCw" class="secondaryToolbarButton rotateCw" title="Rotate Clockwise" tabindex="58" data-l10n-id="page_rotate_cw"> <span data-l10n-id="page_rotate_cw_label">Rotate Clockwise</span> </button> <button id="pageRotateCcw" class="secondaryToolbarButton rotateCcw" title="Rotate Counterclockwise" tabindex="59" data-l10n-id="page_rotate_ccw"> <span data-l10n-id="page_rotate_ccw_label">Rotate Counterclockwise</span> </button> <div class="horizontalToolbarSeparator"></div> <button id="cursorSelectTool" class="secondaryToolbarButton selectTool toggled" title="Enable Text Selection Tool" tabindex="60" data-l10n-id="cursor_text_select_tool"> <span data-l10n-id="cursor_text_select_tool_label">Text Selection Tool</span> </button> <button id="cursorHandTool" class="secondaryToolbarButton handTool" title="Enable Hand Tool" tabindex="61" data-l10n-id="cursor_hand_tool"> <span data-l10n-id="cursor_hand_tool_label">Hand Tool</span> </button> <div class="horizontalToolbarSeparator"></div> <button id="documentProperties" class="secondaryToolbarButton documentProperties" title="Document Properties…" tabindex="62" data-l10n-id="document_properties"> <span data-l10n-id="document_properties_label">Document Properties…</span> </button> </div> </div> <!-- secondaryToolbar --> <div class="toolbar"> <div id="toolbarContainer"> <div id="toolbarViewer"> <div id="toolbarViewerLeft"> <button id="sidebarToggle" class="toolbarButton" title="Toggle Sidebar" tabindex="11" data-l10n-id="toggle_sidebar"> <span data-l10n-id="toggle_sidebar_label">Toggle Sidebar</span> </button> <div class="toolbarButtonSpacer"></div> <button id="viewFind" class="toolbarButton" title="Find in Document" tabindex="12" data-l10n-id="findbar"> <span data-l10n-id="findbar_label">Find</span> </button> <div class="splitToolbarButton hiddenSmallView"> <button class="toolbarButton pageUp" title="Previous Page" id="previous" tabindex="13" data-l10n-id="previous"> <span data-l10n-id="previous_label">Previous</span> </button> <div class="splitToolbarButtonSeparator"></div> <button class="toolbarButton pageDown" title="Next Page" id="next" tabindex="14" data-l10n-id="next"> <span data-l10n-id="next_label">Next</span> </button> </div> <input type="number" id="pageNumber" class="toolbarField pageNumber" title="Page" value="1" size="4" min="1" tabindex="15" data-l10n-id="page"> <span id="numPages" class="toolbarLabel"></span> </div> <div id="toolbarViewerRight"> <button id="presentationMode" class="toolbarButton presentationMode hiddenLargeView" title="Switch to Presentation Mode" tabindex="31" data-l10n-id="presentation_mode"> <span data-l10n-id="presentation_mode_label">Presentation Mode</span> </button> <button id="openFile" class="toolbarButton openFile hiddenLargeView" title="Open File" tabindex="32" data-l10n-id="open_file"> <span data-l10n-id="open_file_label">Open</span> </button> <button id="print" class="toolbarButton print hiddenMediumView" title="Print" tabindex="33" data-l10n-id="print"> <span data-l10n-id="print_label">Print</span> </button> <button id="download" class="toolbarButton download hiddenMediumView" title="Download" tabindex="34" data-l10n-id="download"> <span data-l10n-id="download_label">Download</span> </button> <a href="#" id="viewBookmark" class="toolbarButton bookmark hiddenSmallView" title="Current view (copy or open in new window)" tabindex="35" data-l10n-id="bookmark"> <span data-l10n-id="bookmark_label">Current View</span> </a> <div class="verticalToolbarSeparator hiddenSmallView"></div> <button id="secondaryToolbarToggle" class="toolbarButton" title="Tools" tabindex="36" data-l10n-id="tools"> <span data-l10n-id="tools_label">Tools</span> </button> </div> <div id="toolbarViewerMiddle"> <div class="splitToolbarButton"> <button id="zoomOut" class="toolbarButton zoomOut" title="Zoom Out" tabindex="21" data-l10n-id="zoom_out"> <span data-l10n-id="zoom_out_label">Zoom Out</span> </button> <div class="splitToolbarButtonSeparator"></div> <button id="zoomIn" class="toolbarButton zoomIn" title="Zoom In" tabindex="22" data-l10n-id="zoom_in"> <span data-l10n-id="zoom_in_label">Zoom In</span> </button> </div> <span id="scaleSelectContainer" class="dropdownToolbarButton"> <select id="scaleSelect" title="Zoom" tabindex="23" data-l10n-id="zoom"> <option id="pageAutoOption" title="" value="auto" selected="selected" data-l10n-id="page_scale_auto">Automatic Zoom</option> <option id="pageActualOption" title="" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option> <option id="pageFitOption" title="" value="page-fit" data-l10n-id="page_scale_fit">Page Fit</option> <option id="pageWidthOption" title="" value="page-width" data-l10n-id="page_scale_width">Page Width</option> <option id="customScaleOption" title="" value="custom" disabled="disabled" hidden="true"></option> <option title="" value="0.5" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 50 }'>50%</option> <option title="" value="0.75" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 75 }'>75%</option> <option title="" value="1" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 100 }'>100%</option> <option title="" value="1.25" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 125 }'>125%</option> <option title="" value="1.5" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 150 }'>150%</option> <option title="" value="2" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 200 }'>200%</option> <option title="" value="3" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 300 }'>300%</option> <option title="" value="4" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 400 }'>400%</option> </select> </span> </div> </div> <div id="loadingBar"> <div class="progress"> <div class="glimmer"> </div> </div> </div> </div> </div> <menu type="context" id="viewerContextMenu"> <menuitem id="contextFirstPage" label="First Page" data-l10n-id="first_page"></menuitem> <menuitem id="contextLastPage" label="Last Page" data-l10n-id="last_page"></menuitem> <menuitem id="contextPageRotateCw" label="Rotate Clockwise" data-l10n-id="page_rotate_cw"></menuitem> <menuitem id="contextPageRotateCcw" label="Rotate Counter-Clockwise" data-l10n-id="page_rotate_ccw"></menuitem> </menu> <div id="viewerContainer" tabindex="0"> <div id="viewer" class="pdfViewer"></div> </div> <div id="errorWrapper" hidden='true'> <div id="errorMessageLeft"> <span id="errorMessage"></span> <button id="errorShowMore" data-l10n-id="error_more_info"> More Information </button> <button id="errorShowLess" data-l10n-id="error_less_info" hidden='true'> Less Information </button> </div> <div id="errorMessageRight"> <button id="errorClose" data-l10n-id="error_close"> Close </button> </div> <div class="clearBoth"></div> <textarea id="errorMoreInfo" hidden='true' readonly="readonly"></textarea> </div> </div> <!-- mainContainer --> <div id="overlayContainer" class="hidden"> <div id="passwordOverlay" class="container hidden"> <div class="dialog"> <div class="row"> <p id="passwordText" data-l10n-id="password_label">Enter the password to open this PDF file:</p> </div> <div class="row"> <input type="password" id="password" class="toolbarField"> </div> <div class="buttonRow"> <button id="passwordCancel" class="overlayButton"><span data-l10n-id="password_cancel">Cancel</span></button> <button id="passwordSubmit" class="overlayButton"><span data-l10n-id="password_ok">OK</span></button> </div> </div> </div> <div id="documentPropertiesOverlay" class="container hidden"> <div class="dialog"> <div class="row"> <span data-l10n-id="document_properties_file_name">File name:</span> <p id="fileNameField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_file_size">File size:</span> <p id="fileSizeField">-</p> </div> <div class="separator"></div> <div class="row"> <span data-l10n-id="document_properties_title">Title:</span> <p id="titleField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_author">Author:</span> <p id="authorField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_subject">Subject:</span> <p id="subjectField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_keywords">Keywords:</span> <p id="keywordsField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_creation_date">Creation Date:</span> <p id="creationDateField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_modification_date">Modification Date:</span> <p id="modificationDateField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_creator">Creator:</span> <p id="creatorField">-</p> </div> <div class="separator"></div> <div class="row"> <span data-l10n-id="document_properties_producer">PDF Producer:</span> <p id="producerField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_version">PDF Version:</span> <p id="versionField">-</p> </div> <div class="row"> <span data-l10n-id="document_properties_page_count">Page Count:</span> <p id="pageCountField">-</p> </div> <div class="buttonRow"> <button id="documentPropertiesClose" class="overlayButton"><span data-l10n-id="document_properties_close">Close</span></button> </div> </div> </div> <div id="printServiceOverlay" class="container hidden"> <div class="dialog"> <div class="row"> <span data-l10n-id="print_progress_message">Preparing document for printing…</span> </div> <div class="row"> <progress value="0" max="100"></progress> <span data-l10n-id="print_progress_percent" data-l10n-args='{ "progress": 0 }' class="relative-progress">0%</span> </div> <div class="buttonRow"> <button id="printCancel" class="overlayButton"><span data-l10n-id="print_progress_close">Cancel</span></button> </div> </div> </div> </div> <!-- overlayContainer --> </div> <!-- outerContainer --> <div id="printContainer"></div> </body> ```

4小时玩转微信小程序——基础入门与微信支付实战

4小时玩转微信小程序——基础入门与微信支付实战

Python可以这样学(第四季:数据分析与科学计算可视化)

Python可以这样学(第四季:数据分析与科学计算可视化)

组成原理课程设计(实现机器数的真值还原等功能)

实现机器数的真值还原(定点小数)、定点小数的单符号位补码加减运算、定点小数的补码乘法运算和浮点数的加减运算。

javaWeb图书馆管理系统源码mysql版本

系统介绍 图书馆管理系统主要的目的是实现图书馆的信息化管理。图书馆的主要业务就是新书的借阅和归还,因此系统最核心的功能便是实现图书的借阅和归还。此外,还需要提供图书的信息查询、读者图书借阅情况的查询等

土豆浏览器

土豆浏览器可以用来看各种搞笑、电影、电视剧视频

Java面试题大全(2020版)

发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environ...

Java8零基础入门视频教程

Java8零基础入门视频教程

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

TTP229触摸代码以及触摸返回值处理

自己总结的ttp229触摸代码,触摸代码以及触摸按键处理

网络工程师小白入门--【思科CCNA、华为HCNA等网络工程师认证】

网络工程师小白入门--【思科CCNA、华为HCNA等网络工程师认证】

深度学习原理+项目实战+算法详解+主流框架(套餐)

深度学习系列课程从深度学习基础知识点开始讲解一步步进入神经网络的世界再到卷积和递归神经网络,详解各大经典网络架构。实战部分选择当下最火爆深度学习框架PyTorch与Tensorflow/Keras,全程实战演示框架核心使用与建模方法。项目实战部分选择计算机视觉与自然语言处理领域经典项目,从零开始详解算法原理,debug模式逐行代码解读。适合准备就业和转行的同学们加入学习! 建议按照下列课程顺序来进行学习 (1)掌握深度学习必备经典网络架构 (2)深度框架实战方法 (3)计算机视觉与自然语言处理项目实战。(按照课程排列顺序即可)

java jdk 8 帮助文档 中文 文档 chm 谷歌翻译

JDK1.8 API 中文谷歌翻译版 java帮助文档 JDK API java 帮助文档 谷歌翻译 JDK1.8 API 中文 谷歌翻译版 java帮助文档 Java最新帮助文档 本帮助文档是使用谷

Ubuntu18.04安装教程

Ubuntu18.04.1安装一、准备工作1.下载Ubuntu18.04.1 LTS2.制作U盘启动盘3.准备 Ubuntu18.04.1 的硬盘空间二、安装Ubuntu18.04.1三、安装后的一些工作1.安装输入法2.更换软件源四、双系统如何卸载Ubuntu18.04.1新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列...

快速排序---(面试碰到过好几次)

原理:    快速排序,说白了就是给基准数据找其正确索引位置的过程.    如下图所示,假设最开始的基准数据为数组第一个元素23,则首先用一个临时变量去存储基准数据,即tmp=23;然后分别从数组的两端扫描数组,设两个指示标志:low指向起始位置,high指向末尾.    首先从后半部分开始,如果扫描到的值大于基准数据就让high减1,如果发现有元素比该基准数据的值小(如上图中18&amp;lt...

手把手实现Java图书管理系统(附源码)

手把手实现Java图书管理系统(附源码)

HTML期末大作业

这是我自己做的HTML期末大作业,花了很多时间,稍加修改就可以作为自己的作业了,而且也可以作为学习参考

Python数据挖掘简易入门

Python数据挖掘简易入门

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

C++语言基础视频教程

C++语言基础视频教程

UnityLicence

UnityLicence

软件测试2小时入门

软件测试2小时入门

YOLOv3目标检测实战:训练自己的数据集

YOLOv3目标检测实战:训练自己的数据集

Python数据分析师-实战系列

系列课程主要包括Python数据分析必备工具包,数据分析案例实战,核心算法实战与企业级数据分析与建模解决方案实战,建议大家按照系列课程阶段顺序进行学习。所有数据集均为企业收集的真实数据集,整体风格以实战为导向,通俗讲解Python数据分析核心技巧与实战解决方案。

YOLOv3目标检测实战系列课程

《YOLOv3目标检测实战系列课程》旨在帮助大家掌握YOLOv3目标检测的训练、原理、源码与网络模型改进方法。 本课程的YOLOv3使用原作darknet(c语言编写),在Ubuntu系统上做项目演示。 本系列课程包括三门课: (1)《YOLOv3目标检测实战:训练自己的数据集》 包括:安装darknet、给自己的数据集打标签、整理自己的数据集、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计(mAP计算和画出PR曲线)和先验框聚类。 (2)《YOLOv3目标检测:原理与源码解析》讲解YOLOv1、YOLOv2、YOLOv3的原理、程序流程并解析各层的源码。 (3)《YOLOv3目标检测:网络模型改进方法》讲解YOLOv3的改进方法,包括改进1:不显示指定类别目标的方法 (增加功能) ;改进2:合并BN层到卷积层 (加快推理速度) ; 改进3:使用GIoU指标和损失函数 (提高检测精度) ;改进4:tiny YOLOv3 (简化网络模型)并介绍 AlexeyAB/darknet项目。

超详细MySQL安装及基本使用教程

一、下载MySQL 首先,去数据库的官网http://www.mysql.com下载MySQL。 点击进入后的首页如下:  然后点击downloads,community,选择MySQL Community Server。如下图:  滑到下面,找到Recommended Download,然后点击go to download page。如下图:  点击download进入下载页面选择No...

一学即懂的计算机视觉(第一季)

一学即懂的计算机视觉(第一季)

董付国老师Python全栈学习优惠套餐

购买套餐的朋友可以关注微信公众号“Python小屋”,上传付款截图,然后领取董老师任意图书1本。

爬取妹子图片(简单入门)

安装第三方请求库 requests 被网站禁止了访问 原因是我们是Python过来的 重新给一段 可能还是存在用不了,使用网页的 编写代码 上面注意看匹配内容 User-Agent:请求对象 AppleWebKit:请求内核 Chrome浏览器 //请求网页 import requests import re //正则表达式 就是去不规则的网页里面提取有规律的信息 headers = { 'User-Agent':'存放浏览器里面的' } response = requests.get

web网页制作期末大作业

分享思维,改变世界. web网页制作,期末大作业. 所用技术:html css javascript 分享所学所得

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

Spring Boot -01- 快速入门篇(图文教程)

Spring Boot -01- 快速入门篇 今天开始不断整理 Spring Boot 2.0 版本学习笔记,大家可以在博客看到我的笔记,然后大家想看视频课程也可以到【慕课网】手机 app,去找【Spring Boot 2.0 深度实践】的课程,令人开心的是,课程完全免费! 什么是 Spring Boot? Spring Boot 是由 Pivotal 团队提供的全新框架。Spring Boot...

立方体线框模型透视投影 (计算机图形学实验)

计算机图形学实验 立方体线框模型透视投影 的可执行文件,亲测可运行,若需报告可以联系我,期待和各位交流

相关热词 c# cad插入影像 c#设计思想 c#正则表达式 转换 c#form复制 c#写web c# 柱形图 c# wcf 服务库 c#应用程序管理器 c#数组如何赋值给数组 c#序列化应用目的博客园
立即提问