可以把一些常用的方法,写入js文件,引入html界面
这样,可以在多处应用。更好一些。缺点是不够灵活。
优点是,一处修改,多处应用。
函数这东西,一般都是先加载的,之后就可以随便调用了。
function delquestion(obj){
//confirm('确认要删除吗');
$(obj).parent().parent().remove();
}
function addquestions(obj){
var str = question_id = '';
//str = $(obj).parent().prev().html();
str = $(obj).parent().prev().find(".questions").text();
question_id = $(obj).parent().prev().find("input").val();
var flag = false;
$(".addquestions").each(function(){
if(question_id == $(this).val()){
flag = true;
}
});
if(flag){
alert("您已经添加过!不可重复添加");
return;
}
str1 = '<input type="hidden" class="addquestions" name="addquestions[]" value="'+question_id+'">';
$(".table_left").find("tr").eq(-2).after('<tr height="39"><td width="85%" style="text-align:left;padding-left:8px;">'+str1+str+'</td><td align="center"><input type="button" class="delete_2" onclick="delquestion(this);" style="cursor:pointer;"/></td></tr>');
}
function pages(nowPage,url){
var content = $('#content').val();
var search_type = $("#search_type").val();
ajax(content,search_type,nowPage);
}
function ajax(content,search_type,nowPage){
var url = "/lessons/teacher/ajax";
if(content)url += "/content/"+content;
if(search_type!= 0)url +="/search_type/"+search_type;
if(nowPage)url += "/nowpage/"+nowPage;
$.ajax({
type: "POST",
url: url,
success:function(response){
if(response){
$("#questions_nav").nextAll().remove();
$("#questions_nav").after(response);
}else{
alert("error");
}
}
});
}
function getBookByGradeAndLesson(grade,lesson_id){
var url = "/default/index/ajax/do/getBookByGradeAndLesson";
var data = "grade="+grade+"&lesson_id="+lesson_id;
$.ajax({
type:"POST",
async:false,
url:url,
data:data,
success:function(response){
if(response){
$("#search_book").html(response);
$("#search_book option:first").text("书");
}else{
alert("error");
}
}
});
}
function getChapterByBookId(book_id){
var url = "/default/index/ajax/do/getChapterByBookId";
var data = "book_id="+book_id;
$.ajax({
type:"POST",
async:false,
url:url,
data:data,
success:function(response){
if(response){
$("#search_chapter").html(response);
$("#search_chapter option:first").text("章");
}else{
alert("error");
}
}
});
}
function getSectionByChapterId(chapter_id){
var url = "/default/index/ajax/do/getSectionByChapterId";
var data = "chapter_id="+chapter_id;
$.ajax({
type:"POST",
async:false,
url:url,
data:data,
success:function(response){
if(response){
$("#search_section").html(response);
$("#search_section option:first").text("节");
}else{
alert("error");
}
}
});
}
function chapterRefresh(){
var html = "<option vlaue=''>章</option>";
$("#search_chapter").html(html);
}
function sectionRefresh(){
var html = "<option vlaue=''>节</option>";
$("#search_section").html(html);
}
上面是函数方法,
加载之。。。
<script src="/js/app/lessons.js" type="text/javascript"></script>
主体应用之。。。
$(document).ready(function(){
var grade = "<!--{$grade}-->";
//var grade = 0;
var lesson_id = "<!--{$lesson_id}-->";
//var lesson_id = 0;
if(grade!=""&&lesson_id!=""){
getBookByGradeAndLesson(grade,lesson_id);
}
//书变动
$("#search_book").change(function(){
var book_id = $(this).val();
if(book_id!=""){
getChapterByBookId(book_id);
}
//chapterRefresh();
sectionRefresh();
});
//章变动
$("#search_chapter").change(function(){
var chapter_id = $(this).val();
if(chapter_id!=""){
getSectionByChapterId(chapter_id);
}
});
$("#deadlinetime").calendar();
$(".make_sure1").click(function(){
var exams_name = $("#exams_name").val();
if(!exams_name){
alert("练习名称不能为空!");
return;
}
var len = exams_name.length;
if(len>30){
alert("练习名称过长!");
return;
}
var duration = $("#duration").val();
if(!duration){
alert("预计用时不能为空!");
return;
}
var reg = new RegExp("^[0-9]*$");
if(!reg.test(duration)){
alert("预计用时需为数字!");
return;
}else if(duration>300){
alert("预计用时不能大于300!");
return;
}
var questions = '';
questions=$(".addquestions").val();
if(!questions){
alert("您还没有添加问题!");
return;
}
$("#add").submit();
});
});
小结:这样利用js会更好。
优点如下:
函数化,很多功能可以重复利用。
常用函数,类化。这样很多文件都可以用它。更加的扩大了它的应用场所。
缺点:需要深入查找,才能看到代码。
可以把一些常用的方法,写入js文件,引入html界面的更多相关文章
- vue脚手架使用swiper /引入js文件/引入css文件
1.安装vue-cli 参考地址:https://github.com/vuejs/vue-cli 如果不使用严格语法需要在后三项打no:(加了挺头疼的,老是报错,但是对自己的代码规范性也是有很大的帮 ...
- vue引入swiper vue使用swiper vue脚手架使用swiper /引入js文件/引入css文件
vue引入swiper vue使用swiper vue脚手架使用swiper /引入js文件/引入css文件 ------------------------------------------- ...
- vue项目引入第三方js插件,单个js文件引入成功,使用该插件方法时报错(问题已解决)
1.引入第三方js文件,npm安装不了 2.控制台显示引入成功 3.在methods下使用 图片看不清请看下面代码 updateTime() { setInterval(()=>{ var cd ...
- JavaScript的8行代码搞定js文件引入问题
单页面的操作,免不了会有各种jsp的嵌套问题,一个操作页面里面可能涉及到几十甚至上百个jsp页面. 平常我们对用到的js文件的引入,都会放到index的header里面.如图: 但是,让我们思考三个问 ...
- js文件引入
js文件内引用js文件使用 document.write("<script language='javascript' src='scripts/lang/chs.js'>< ...
- 在vue的js文件引入自定义js文件
自定义js var provinces=[] export default provinces vue页面js引入 import riskLeft from "./index.js" ...
- thinkphp遇到的小问题,js文件中U方法不被解析
我想在js文件中写ajax, 写完发现异常, 本以为是js文件中不支持ajax 后来发现时地址解析错误. 也就是U方法在js文件中不被解析. 貌似thinkphp解析,tpl文件中的一些元素. js文 ...
- 将DataSet(DataTable)转换成JSON格式(生成JS文件存储)
public static string CreateJsonParameters(DataTable dt) { /**/ /**/ /**/ /* /*********************** ...
- vue中如何在本地导入js文件
import {setStore,setUser,getStore,removeStore} from "../../../public/localstory" 在导入js文件时, ...
随机推荐
- ZOJ 3822 Domination(概率dp)
一个n行m列的棋盘,每天可以放一个棋子,问要使得棋盘的每行每列都至少有一个棋子 需要的放棋子天数的期望. dp[i][j][k]表示用了k天棋子共能占领棋盘的i行j列的概率. 他的放置策略是,每放一次 ...
- BeautifulSoup在Windows下安装(running 2to3)
在windows下安装beautifulsoup经常会出现说是在python3下无法运行Python2的代码,这时需要将Python下的tool下的scripts目录添加到环境变量中,然后运行2to3 ...
- (转)iFrame高度自适应
第一种方法:代码简单,兼容性还可以,大家可以先测试下: function SetWinHeight(obj) { var win=obj; if (document.getElementById) { ...
- dedecms调用所有顶级栏目最新文章的实现方法
做dedecms的模板,我们会遇到各种各样的调用问题,dedecms列表页调用所有顶级栏目文章列表的方法如下所述: 在文章页面经常使用的是 {dede:arclist orderby='pubdate ...
- LINUX 内核代码 errno 错误代码提示 /include/asm/errno.h
首先在自己的程序中#include<errno.h> 添加打印errno的语句 printf("errno is: %d\n",errno); 根据errno的值查错. ...
- Java对象序列化入门
Java对象序列化入门 关于Java序列化的文章早已是汗牛充栋了,本文是对我个人过往学习,理解及应用Java序列化的一个总结.此文内容涉及Java序列化的基本原理,以及多种方法对序列化形式进行定制 ...
- 四、分离T4引擎
在前几篇文章中,我使用大量的篇幅来介绍T4在VisualStudio中如何使用.虽然在一定程度上可以提高我们的工作效率,但并没有实质上的改变.不过从另一方面来说,我们确实了解到了T4的强大. ...
- STL中的set容器
#include <iostream> #include <set> using namespace std; int main() { set<int> s; s ...
- Spring4.0学习笔记(11) —— Spring AspectJ 的五种通知
Spring AspectJ 一.基于注解的方式配置通知 1.额外引入的jar包: a) com.springsource.org.aopalliance-1.0.0.jar b) com.sprin ...
- Jquery创建JSON对象
<html> <body> <h2>通过 JSON 字符串来创建对象</h3> <p> First Name: <span id=&q ...