"><img src=xss onerror=alert(test)>

">
以下是对代码的优化和改进: 1. 删除多余的空格和换行符,减小文件大小,提高页面加载速度。 2. 将样式和脚本代码分离到外部文件中,使页面结构更清晰,易于维护。 3. 使用语义化的 HTML 标签,如 header、main、section、article 等,增强页面的可读性和可访问性。 4. 使用 CSS3 的 flexbox 布局代替传统的浮动布局,使页面更加灵活和自适应。 5. 使用 AJAX 技术实现异步提交表单数据,提高用户体验和页面性能。 6. 对于表单数据的提交和处理,应该进行严格的验证和过滤,防止 XSS、CSRF 等安全问题的出现。 改进后的代码如下: ```html <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title>留言板</title> <link rel="stylesheet" href="style.css"> </head> <body> <header> <h1>留言板</h1> </header> <main> <section class="submit_box"> <form id="message_form"> <div class="area_box"> <textarea rows="5" cols="40" placeholder="发表留言..." name="message" id="message"></textarea> </div> <div class="rating_box"> <label for="rating">评分:</label> <input type="number" name="rating" id="rating" min="1" max="5"> </div> <button type="submit">发表</button> </form> </section> <section class="content_box"> <h2>留言列表</h2> <ul id="message_list"> <!-- 留言列表 --> </ul> </section> </main> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script src="app.js"></script> </body> </html> ``` ```css * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: Arial, sans-serif; font-size: 16px; line-height: 1.5; } header { background-color: #333; color: #fff; padding: 20px; } header h1 { margin: 0; font-size: 36px; font-weight: normal; } main { display: flex; flex-wrap: wrap; gap: 20px; padding: 20px; } .submit_box { flex-basis: 30%; max-width: 300px; border: 1px solid #ccc; padding: 20px; } .submit_box textarea { width: 100%; height: 150px; resize: none; border: 1px solid #ccc; padding: 10px; } .rating_box { margin-top: 10px; } .rating_box label { margin-right: 10px; } .content_box { flex-basis: 70%; max-width: 700px; border: 1px solid #ccc; padding: 20px; } .content_box h2 { margin: 0; font-size: 24px; font-weight: normal; } .message_item { margin-bottom: 20px; } .message_item h3 { margin: 0; font-size: 18px; } .message_item p { margin: 10px 0; } .message_item .rating { margin-top: 10px; } .message_item .rating span { display: inline-block; width: 20px; height: 20px; background-color: #f90; } .message_item .rating span.empty { background-color: #ccc; } ``` ```js $(function() { // 监听表单提交事件 $('#message_form').on('submit', function(e) { // 阻止默认提交 e.preventDefault(); // 获取表单数据 var message = $('#message').val(); var rating = $('#rating').val(); // 发送 AJAX 请求 $.ajax({ url: 'submit.php', method: 'POST', data: {message: message, rating: rating}, success: function(response) { // 处理响应数据 if (response.status === 'success') { // 清空表单数据 $('#message').val(''); $('#rating').val(''); // 添加新的留言项 var $message_item = $('<li class="message_item">'); var $message_title = $('<h3>').text('用户'); var $message_content = $('<p>').text(message); var $rating_box = $('<div class="rating">'); for (var i = 1; i <= 5; i++) { var $star = $('<span>').addClass('empty'); if (i <= rating) { $star.removeClass('empty'); } $rating_box.append($star); } $message_item.append($message_title, $message_content, $rating_box); $('#message_list').append($message_item); } else { alert('提交失败,请稍后重试!'); } }, error: function() { alert('提交失败,请稍后重试!'); } }); }); }); ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值