会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132453个问题
JAVA 全系列/第十三阶段:分布式文件存储与数据缓存/Nginx 34201楼

老师,您好。我想请教一下。为啥我在点击加减的时候,会出现 NaN (not a number) 这样的提示?

咋解决呀?

HTML文件:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		 
		<!-- HTML和css中,不论什么形式的代码 能呈现相应的效果 以及 后期便于维护 就行 -->
		
		<title></title>
	    <link rel="stylesheet" type="text/css" href="css/reset.css"/>
		<link rel="stylesheet" type="text/css" href="css/jd.css"/>
		<link rel="stylesheet" type="text/css" href="icon/iconfont.css"/>
		
		<script type="text/javascript" src="js/02-jd的js.js"></script>
		
		<!-- js的使用 -->
		<script type="text/javascript">
			alert("欢迎进入京东页面");
		</script>
	</head>
	
	
	<body>
		<!-- 1.导航开始 -->
		<div class="nav">
			<!-- 下一行的div是用来控制居中的 -->
			<div class="warp">
				
				<ul class="nav_ul1">
					<!-- 要掌握图标的引入方法!! -->
					<li><a><i class="iconfont">&#xe614</i>京东首页</a></li>
					<li><a href="">配送到:北京</a></li>
				</ul>
					
					
				<ul class="nav_ul2">
					<li><a href="">洋洋宝贝</a><span>|</span></li>
					<li><a href="">我的订单</a><span>|</span></li>
					<li><a href="">我的京东</a><span>|</span></li>
					<li><a href="">京东会员</a><span>|</span></li>
					<li><a href="">企业采购</a><span>|</span></li>
					<li><a href="">京东手机</a><span>|</span></li>
					<li><a href="">关注京东</a><span>|</span></li>
					<li><a href="">客户服务</a><span>|</span></li>
					<li><a href="">网址导航</a><span></span></li>
				</ul>	
		    </div>
		</div>
		<!-- 导航结束 -->
		
		
		<!-- 2.搜索框开始 -->
		<div class="search">
			<div class="warp">
		        <img src="img/logo.jpg" width="200px" height="50px"/>		
				
				<!-- 下一行又开辟了一个div 方便两个及其以上的元素去浮动 -->
				<div class="search_div">
					<input type="text" class="search_text"/>
					<input type="button" value="搜索" class="search_but" />
					
				</div>
				
			</div>
			
		</div>
	    <!-- 搜索框结束 -->
		
		
		
		<!-- 3.标题开始 -->
		     <!-- 下一行中,是两个重叠div的简易写法 -->
		 <div class="title warp">
			
			 <h3>全部商品</h3>
			
			<div class="">
				<span id="">配送至:</span>
				
				<select style="height: 15px;">
					<!-- 第一个option会自动成为选择框的默认选项-->
					<option value="">昌平区</option>
					<option value="">顺义区</option>
					<option value="">大兴区</option>
					<option value="">朝阳区</option>
					<option value="">昌平区</option>
					
				</select>
			</div>
		 	
		 </div>
		
		<!-- 标题结束 -->

		
		<!-- 4.显示菜单栏的开始 -->
		<div class="tips warp">
			<ul>
				<li> <input type="checkbox"  name="fav" onclick="checkTest1(this)"/>全选</li>
				<li>商品</li>
				<li>单价</li>
				<li>数量</li>
				<li>小计</li>
				<li>操作</li>
			</ul>
		</div>
		<!-- 显示菜单栏的结束 -->
		
		
		<!-- 商品详情展示开始	 -->
		<div class="info warp">
		    <ul >
		    	<li class="info_1" ><input type="checkbox" name="fav" onclick="checkTest2()"/></li>
		    	<!-- 当指定一个width或者height时,图片会等比例进行放大或者缩小 -->
				<li class="info_2"><img src="img/img01.jpg" width="80px"></li>
		    	<li class="info_3"><a>【京东超市】desha春秋季儿童休闲服</a></li>
		    	<li class="info_4"><a>颜色:灰色+粉红</a></li>
		    	<li class="info_5">¥182.5</li>
		    	<li class="info_6">
					<button class="bot_1"  onclick="checkTest3(this,1)">-</button>
					<input type="text" value="1"/>
					<button class="bot_2" onclick="checkTest3(this,2)">+</button>
				</li>
		    	<li class="info_7">¥182.5</li>
		    	<li class="info_8">
					<a href="">删除</a><br/>
				    <a href="">已到我的关注</a>
				</li>
		    </ul>	
			
		</div>
		
		
		<div class="info warp">
		    <ul >
		    	<li class="info_1"><input type="checkbox" name="fav" onclick="checkTest2()"/></li>
		    	<!-- 当指定一个width或者height时,图片会等比例进行放大或者缩小 -->
				<li class="info_2"><img src="img/img01.jpg" width="80px"></li>
		    	<li class="info_3"><a>【京东超市】desha春秋季儿童休闲服</a></li>
		    	<li class="info_4"><a>颜色:灰色+粉红</a></li>
		    	<li class="info_5">¥182.5</li>
		    	<li class="info_6">
					<button class="bot_1">-</button>
					<input type="text" value="1"/>
					<button class="bot_2">+</button>
				</li>
		    	<li class="info_7">¥182.5</li>
		    	<li class="info_8">
					<a href="">删除</a><br/>
				    <a href="">已到我的关注</a>
				</li>
		    </ul>	
			
		</div>
		
		
		<div class="info warp">
		    <ul >
		    	<li class="info_1"><input type="checkbox" name="fav" onclick="checkTest2()"/></li>
		    	<!-- 当指定一个width或者height时,图片会等比例进行放大或者缩小 -->
				<li class="info_2"><img src="img/img01.jpg" width="80px"></li>
		    	<li class="info_3"><a>【京东超市】desha春秋季儿童休闲服</a></li>
		    	<li class="info_4"><a>颜色:灰色+粉红</a></li>
		    	<li class="info_5">¥182.5</li>
		    	<li class="info_6">
					<button class="bot_1" onclick="checkTest3()">-</button>
					<input type="text" value="1"/>
					<button class="bot_2">+</button>
				</li>
		    	<li class="info_7">¥182.5</li>
		    	<li class="info_8">
					<a href="">删除</a><br/>
				    <a href="">已到我的关注</a>
				</li>
		    </ul>	
			
		</div>
		<!-- 商品详情展示结束 -->
		
		
		<!-- 结算模块开始 -->
		    <div class="balance warp">
		    	
				<ul class="balance_ul1">
					<li>
					    <input type="checkbox" name="fav" id="" value="" onclick="checkTest1(this)"/>
						全选
					</li>
					<li><a href="">删除选中商品</a></li>
					<li><a href="">移动到我的关注</a></li>
					<li><a href="">清除下柜商品</a></li>
				</ul>
				
				
				<ul class=" balance_ul2">
					<li><a href="">已经选择<span>1</span>件商品</a></li>
					<li><a href="">总价: <span>¥12</span></a></li>
					<li><a href="">
					<!-- <input type="button" name="" id="" value="去结算" /> -->
					<button class="butt" type="button">去结算</button>
					</a></li>
				</ul>
		    </div>
		
		
		<!-- 结算模块结束 -->
		
	</body>
</html>
Javascript文件:

var fav = document.getElementsByName("fav");

function checkTest1(th){
	//检验其本身有没有被勾选啊v,  
	
	var flag = th.checked;
	
	//flag返回的值是true 或者false
	// alert(flag); 
	
	// var fav = document.getElementsByName("fav");
	
	//如果全点击全选框, 则商品的的选择框也应该画上对勾;
	//原版
	// if(flag){
	// 	for(var i in fav){
	// 		fav[i].checked = true;
	// 	}
		
		
	// }else{
	// 	for(var i in fav){
	// 		fav[i].checked = false;
	// 	}
	// }
	//升级版
	
		for(var i in fav){
			fav[i].checked = flag;
		}
	

}

//获得其本身的方法: document.getElementBy啥啥    或者   通过this 来传值


//单选决定全选操作
function checkTest2(){
	
	var flag = true;
	//如果商品栏中的框框都画上对勾之后,两个全选框框也应该有对勾
	for(var i =1;i<fav.length-1;i++){
		if(!fav[i].checked){
			flag = false;
			break;
		}
    }
	//决定勾选 全选框
	fav[0].checked = flag;
	fav[fav.length-1].checked = flag;
}



//控制数量的增和减    并且实现 ‘小计’ 的增减
function checkTest3(th,sig){
	var pre;
	
	if(sig == "1"){
		pre = th.nextElementSibling;
		if(Number(pre.value)>0){
			pre.value =Number(pre.value)-1;}
	}else{
		pre = th.previousElementSibling;
		pre.value = Number(pre.value) + 1;
	}
	
	
	//获得上一个节点
    // var pre = th.previousElementSibling;
	
	//获得上一个节点的值  注意:value是String类型的
	//var value= pre.value+1;   
	// pre.value = Number(pre.value) + 1;
	
	
	//获得下一个节点
	// var pre = th.nextElementSibling;
	// pre.value =pre.value-1;
	
	
	//实现‘小计’的增减  思想:将数量和单价相乘,赋值给‘小计’
	//获得单价
	var val = pre.parentNode.previousElementSibling.innerHTML;
	
	//数量 乘以 单价  注意:var是String类型的,需要转成数字类型的
	var zong = Number(val)*Number(pre.value);
	
	// alert(typeof(Number(val)*Number(pre.value)));  -->number
	
	//将总价 内置到 '小计'的位置   先获得 ’小计‘ 的节点
    pre.parentNode.nextElementSibling.innerHTML = zong;
		
	
	
	
}

问题如图:

G_ZM}C`8@MQWMQJ]T%A`32F.png

Python 全系列/第七阶段:网页编程基础/JavaScript 34203楼

from tkinter.filedialog import *
from tkinter.colorchooser import *
#encoding='UTF-8'
class Application(Frame):
    def __init__(self,master=None):
        super().__init__(master)
        self.master=master
        self.textpad=None
        self.pack()
        self.createWidget()

    def createWidget(self):
        # 创建主菜单栏

        menubar=Menu(root)

        # 创建子菜单
        menuFile=Menu(menubar)
        menuEdit=Menu(menubar)
        menuHelp=Menu(menubar)

        # 将子菜单加到主菜单栏里去

        menubar.add_cascade(label='文件(F)', menu=menuFile)
        menubar.add_cascade(label='编辑(E)', menu=menuEdit)
        menubar.add_cascade(label='帮助(H)', menu=menuHelp)

        # 增加菜单项

        menuFile .add_command(label='新建', accelerator='Ctrl+n', command=self.test)
        menuFile .add_command(label='打开', accelerator='Ctrl+o', command=self.openfile)
        menuFile.add_command(label='保存', accelerator='Ctrl+s', command=self.savefile)
        menuFile.add_separator()      #  添加分割线
        menuFile.add_command(label='退出', accelerator='Ctrl+q', command=self.exit)

        # 将主菜单栏加到根窗口

        root['menu']=menubar
        # 文本编辑区

        self.textpad=Text(root, width=50, height=30)
        self.textpad.pack()

        # 创建上下菜单

        self.contextMenu=Menu(root)
        self.contextMenu.add_command(label='背景颜色', command=self.test)
        # 为右键绑定事件

        root.bind('<Button-3>', self.createContextMenu)
    def openfile(self):
        #self.textpad.delete(1.0,'end')
        with askopenfile(title='打开文本文件')as f:
            self.textpad.insert(INSERT, f.read())
            self.filename=f.name

    def savefile(self):
        with open(self.filename, 'w')as f :
            c=self.textpad.get(1.0, END)
            f.write(c)
    def exit(self):
        root.quit()
    def test(self):
        pass
    def createContextMenu(self,event):
        self.contextMenu.post(event.x_root, event.y_root)
if __name__=='__main__':
    root=Tk()
    root.geometry('450x300+200+300')
    app=Application(master=root)
    root.title('记事本')
    root.mainloop()

老师:

你好!

就是我在打开文件的时候,如果文件里面是汉字。就会报错:‘'gbk' codec can't decode byte 0x88 in position 14: illegal multibyte sequence’。如果是英文就没事。请问是怎么回事



Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 34204楼
JAVA 全系列/第六阶段:项目管理与SSM框架/Maven 34207楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 34210楼
Python 全系列/第八阶段:轻量级Web开发利器-Flask框架/虚拟环境 34211楼

servletdemo.rar

这是怎么回事?

图像.png



JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解 34212楼

老师,这个异常要怎么处理?

image.png

视频当中2:51继承这个类是干什么的?我照着视频上写是报错的。

image.png

image.png


package XmlProject;

import org.xml.sax.SAXException;

import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import java.io.IOException;

public class TestSAXParse {
    public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
        //1)   创建SAXParserFactory的对象
        SAXParserFactory spf=SAXParserFactory.newInstance();
        //2)   创建SAXParser对象 (解析器)
        SAXParser parser=spf.newSAXParser();
        //3)   创建一个DefaultHandler的子类
        BookDeaultHandler bdh=new BookDeaultHandler();
        //4)   调用parse方法
        parser.parse("D:\\Users\\0091274\\Desktop\\books.xml", bdh);
    }
}
package XmlProject;

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

public class BookDeaultHandler extends DefaultHandler {
    //重写第一个方法
    /**解析xml文档开始时调用*/
    @Override
    public void startDocument() throws SAXException {
        // TODO Auto-generated method stub
        super.startDocument();
        System.out.println("解析xml文档开始");
    }
    /*解析xml文档结束时调用*/
    @Override
    public void endDocument() throws SAXException {
        // TODO Auto-generated method stub
        super.endDocument();
        System.out.println("解析xml文档结束");
    }
    /**解析xml文档中的节点时调用*/
    @Override
    public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
        // TODO Auto-generated method stub
        super.startElement(uri, localName, qName, attributes);
        //System.out.println("解析xml文档中的节点时调用");
        /**判断,如果是book节点,获取节点的属性和属性值*/
        if("book".equals(qName)){
            //获取所有的属性
            int count=attributes.getLength();//属性的个数
            //循环获取每个属性
            for(int i=0;i<count;i++){
                String attName=attributes.getQName(i);//属性名称
                String attValue=attributes.getValue(i);//属性值
                System.out.println("属性名称:"+attName+"\t属性值为:"+attValue);
            }
        }else if(!"books".equals(qName)&&!"book".equals(qName)){
            System.out.print("节点的名称:"+qName+"\t");
        }

    }
    /**解析xml文档中的节点结束调用*/
    @Override
    public void endElement(String uri, String localName, String qName) throws SAXException {
        // TODO Auto-generated method stub
        super.endElement(uri, localName, qName);
        //System.out.println("解析xml文档中的节点结束调用");
    }
    @Override
    public void characters(char[] ch, int start, int length) throws SAXException {
        // TODO Auto-generated method stub
        super.characters(ch, start, length);
        String value=new String(ch,start,length);
        if(!"".equals(value.trim())){
            System.out.println(value);
        }

    }
}
<?xml version="1.0" encoding="UTF-8"?>

<books>
    <book id="1001">
        <name>java入门到精通</name>
        <author>张小三</author>
        <price>95.6</price>
    </book>

    <book id="1002">
        <name>MySql从删库到跑路</name>
        <author>张三</author>
        <price>85.6</price>
    </book>
</books>


JAVA 全系列/第二阶段:JAVA 基础深化和提高/XML 技术(旧) 34213楼
Python 全系列/第十阶段:Flask百战电商后台项目/Flask百战电商后台项目 34214楼
JAVA 全系列/第七阶段:生产环境部署与协同开发/Docker 34215楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637