这样,可以在多处应用。更好一些。缺点是不够灵活。

优点是,一处修改,多处应用。

函数这东西,一般都是先加载的,之后就可以随便调用了。

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界面的更多相关文章

  1. vue脚手架使用swiper /引入js文件/引入css文件

    1.安装vue-cli 参考地址:https://github.com/vuejs/vue-cli 如果不使用严格语法需要在后三项打no:(加了挺头疼的,老是报错,但是对自己的代码规范性也是有很大的帮 ...

  2. vue引入swiper vue使用swiper vue脚手架使用swiper /引入js文件/引入css文件

    vue引入swiper  vue使用swiper  vue脚手架使用swiper /引入js文件/引入css文件 ------------------------------------------- ...

  3. vue项目引入第三方js插件,单个js文件引入成功,使用该插件方法时报错(问题已解决)

    1.引入第三方js文件,npm安装不了 2.控制台显示引入成功 3.在methods下使用 图片看不清请看下面代码 updateTime() { setInterval(()=>{ var cd ...

  4. JavaScript的8行代码搞定js文件引入问题

    单页面的操作,免不了会有各种jsp的嵌套问题,一个操作页面里面可能涉及到几十甚至上百个jsp页面. 平常我们对用到的js文件的引入,都会放到index的header里面.如图: 但是,让我们思考三个问 ...

  5. js文件引入

    js文件内引用js文件使用 document.write("<script language='javascript' src='scripts/lang/chs.js'>< ...

  6. 在vue的js文件引入自定义js文件

    自定义js var provinces=[] export default provinces vue页面js引入 import riskLeft from "./index.js" ...

  7. thinkphp遇到的小问题,js文件中U方法不被解析

    我想在js文件中写ajax, 写完发现异常, 本以为是js文件中不支持ajax 后来发现时地址解析错误. 也就是U方法在js文件中不被解析. 貌似thinkphp解析,tpl文件中的一些元素. js文 ...

  8. 将DataSet(DataTable)转换成JSON格式(生成JS文件存储)

    public static string CreateJsonParameters(DataTable dt) { /**/ /**/ /**/ /* /*********************** ...

  9. vue中如何在本地导入js文件

    import {setStore,setUser,getStore,removeStore} from "../../../public/localstory" 在导入js文件时, ...

随机推荐

  1. ZOJ 3822 Domination(概率dp)

    一个n行m列的棋盘,每天可以放一个棋子,问要使得棋盘的每行每列都至少有一个棋子 需要的放棋子天数的期望. dp[i][j][k]表示用了k天棋子共能占领棋盘的i行j列的概率. 他的放置策略是,每放一次 ...

  2. BeautifulSoup在Windows下安装(running 2to3)

    在windows下安装beautifulsoup经常会出现说是在python3下无法运行Python2的代码,这时需要将Python下的tool下的scripts目录添加到环境变量中,然后运行2to3 ...

  3. (转)iFrame高度自适应

    第一种方法:代码简单,兼容性还可以,大家可以先测试下: function SetWinHeight(obj) { var win=obj; if (document.getElementById) { ...

  4. dedecms调用所有顶级栏目最新文章的实现方法

    做dedecms的模板,我们会遇到各种各样的调用问题,dedecms列表页调用所有顶级栏目文章列表的方法如下所述: 在文章页面经常使用的是 {dede:arclist orderby='pubdate ...

  5. LINUX 内核代码 errno 错误代码提示 /include/asm/errno.h

    首先在自己的程序中#include<errno.h> 添加打印errno的语句 printf("errno is: %d\n",errno); 根据errno的值查错. ...

  6. Java对象序列化入门

      Java对象序列化入门 关于Java序列化的文章早已是汗牛充栋了,本文是对我个人过往学习,理解及应用Java序列化的一个总结.此文内容涉及Java序列化的基本原理,以及多种方法对序列化形式进行定制 ...

  7. 四、分离T4引擎

         在前几篇文章中,我使用大量的篇幅来介绍T4在VisualStudio中如何使用.虽然在一定程度上可以提高我们的工作效率,但并没有实质上的改变.不过从另一方面来说,我们确实了解到了T4的强大. ...

  8. STL中的set容器

    #include <iostream> #include <set> using namespace std; int main() { set<int> s; s ...

  9. Spring4.0学习笔记(11) —— Spring AspectJ 的五种通知

    Spring AspectJ 一.基于注解的方式配置通知 1.额外引入的jar包: a) com.springsource.org.aopalliance-1.0.0.jar b) com.sprin ...

  10. Jquery创建JSON对象

    <html> <body> <h2>通过 JSON 字符串来创建对象</h3> <p> First Name: <span id=&q ...