会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132837个问题
JAVA 全系列/第六阶段:项目管理与SSM框架/Spring 18691楼

老师,你好,麻烦帮我解答一下哈

  1. 为什么我打开网页的时候默认打开的就是03文件中的数据,然后输入再url网址里输入/state的时候才会进行跳转。

  2.在视频中老师只讲了关于状态码这一部分,状态值视频里好像没有讲到。

  3.代码的运行原理不是特别明白。

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8">
      <title>04.Ajax中state的使用</title>
   </head>
   <body>
      <h1>04.Ajax中state的使用</h1>
      <input type="button" name="" id="" value="获取数据" onclick="submitFrom()"/>
      <script type="text/javascript">
         function submitFrom(){
            //创建Ajax对象
            var xhr=new XMLHttpRequest();
            
            url='/state'
            //请求方式(告诉Ajax以什么样的 方式 发送请求给 谁)
            xhr.open('POST',url)
            //发送请求
            xhr.send()
            //处理数据
            xhr.onreadystatechange=function(){
               //console.log(xhr.readyState)  //在控制台输出 获取 Ajax 状态码
               //if(xhr.readyState==4 && xhr.status==200){  /*当状态码==4并且状态值为200时*/
                  //console.log(xhr.status)
               if(xhr.readyState ==4){   /*当状态码==4状态值为200时*/
                  if(xhr.status ==200){  /*状态值为200时*/
                     console.log(xhr.responseText)  /*则获取服务器端给客户端的响应数据*/
                     console.log(JSON.parse(xhr.responseText))  //将 json 字符串转换为 json 对象
                  }else{console.log(xhr.status)}

               }
            }
         }
      </script>
   </body>
</html>
from flask import Flask,request,render_template
app=Flask(__name__)  #创建Flask服务器应用对象
@app.route('/login',methods=['GET','POST']) #发送/login请求地址,可支持get,post参数传递
def login():
    if request.method =="GET":
        return 'get请求成功'
    elif request.method =="POST":
         return 'post请求成功'

#@app.route('/')  #不写参数默认get请求
def text():  #render_template返回的是一套html的模板数据
    return render_template('03.Ajax中post参数传递.html')  #传递数据给Flask服务器接收.

@app.route('/state',methods=["GET",'POST'])  #接收/state请求
def state():
    if request.method =="GET":
        return render_template('04.Ajax中state的使用.html')
    elif request.method =="POST":
         #return 'post请求成功'
         return '{"name":"吕小布","age":10}'




if __name__=="__main__":
    app.run(debug=True)


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

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8">
      <title></title>
      <script>
         function addNode(ts){
            var tb = document.getElementById('tb');
            var tr = document.createElement('tr');
            var td1 = document.createElement('td');
            var td2 = document.createElement('td');
            var td3 = document.createElement('td');
            td1.innerHTML = '<input type="text" size="10px"/>';
            td2.innerHTML = '<input type="text" size="10px"/>';
            td3.innerHTML = '<input type="button" value="添加" onclick="addNode()"/>' +
                  '<input type="button" value="删除" onclick="delNode()"/>'
            tr.appendChild(td1);
            tr.appendChild(td2);
            tr.appendChild(td3);
            // 获取触发事件的"添加"按钮所在的tr节点
            var cur_tr = ts.parentNode.parentNode;
            // 获取下一个tr节点
            var next_tr = cur_tr.nextElementSibling;
            console.log(next_tr)
            // 在下一个tr节点前(即在 触发事件的"添加"按钮所在的tr节点 后)插入一个tr节点
            tb.insertBefore(tr, next_tr);

         }
         function delNode(){

         }

      </script>
      <style>
         tr{
            height: 20px;
            text-align: center;
         }
         td{
            width: 100px;
         }

      </style>
      
   </head>
   <body>
   <table border="2px" bordercolor="blue" align="center" id="tb">
      <tr>
         <th>图书名称</th>
         <th>图书价格</th>
         <th>操作</th>
      </tr>
      <tr>
         <td>JavaEE</td>
         <td>12</td>
         <td>
            <input type="button" value="添加" onclick="addNode(this)"/>
            <input type="button" value="删除"/>
         </td>
      </tr>
      <tr>
         <td>JavaSE</td>
         <td>12</td>
         <td>
            <input type="button" value="添加" onclick="addNode(this)"/>
            <input type="button" value="删除"/>
         </td>
      </tr>
   </table>

   </body>
</html>

老师,我想要在当前节点的下面插入一个节点,而不是在最后添加节点,但是没有成功,下面是异常信息

image.png

Python 全系列/第七阶段:网页编程基础/JavaScript 18693楼
Python 全系列/第一阶段:Python入门/编程基本概念 18694楼
JAVA 全系列/第一阶段:JAVA 快速入门/面向对象详解和JVM底层内存分析 18696楼
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 18697楼
JAVA 全系列/第六阶段:项目管理与SSM框架/Spring 18698楼

Exception in thread "main" org.springframework.dao.DataIntegrityViolationException: PreparedStatementCallback; SQL [insert into orders value(default,?,null)]; Data truncated for column 'orderprice' at row 1; nested exception is java.sql.SQLException: Data truncated for column 'orderprice' at row 1

at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:104)

at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)

at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)

at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)

at org.springframework.jdbc.core.JdbcTemplate.translateException(JdbcTemplate.java:1443)

at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:633)

at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:862)

at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:917)

at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:927)

at com.aliyun.sailorzhao.spring.tx.dao.UserDaoImp.insertOrder(UserDaoImp.java:31)

at com.aliyun.sailorzhao.spring.tx.service.UserServiceImp.addUserAndOrder(UserServiceImp.java:21)

at com.aliyun.sailorzhao.spring.tx.Test.test1(Test.java:23)

at com.aliyun.sailorzhao.spring.tx.Test.main(Test.java:12)

Caused by: java.sql.SQLException: Data truncated for column 'orderprice' at row 1

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)

at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1912)

at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2133)

at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2067)

at com.mysql.jdbc.PreparedStatement.executeLargeUpdate(PreparedStatement.java:5175)

at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2052)

at org.springframework.jdbc.core.JdbcTemplate.lambda$update$0(JdbcTemplate.java:867)

at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:617)

... 7 more

这个是我爸哪里搞错了呢?

// UserDaoImp.java

@Override

public void insertOrder(Order order) {

String sql = "insert into orders value(default,?,null)";

Object args = new Object[] { order.getOrderprice() };

this.jdbcTemplate.update(sql, args);

}

// Test.java

Order order = new Order();

order.setOrderprice(113);

userService.addUserAndOrder(user, order);


JAVA 全系列/第六阶段:项目管理与SSM框架/Spring 18700楼
Python 全系列/第一阶段:Python入门/Python入门(动画版) 18703楼
Python 全系列/第八阶段:轻量级Web开发利器-Flask框架/Flask高级 18705楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

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