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

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

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

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. Eclipse用法和技巧二十四:当git遇上eclipse

    git是非常优秀的代码管理工具,eclipse是非常不错的,免费的IDE.工作中两者碰到一起,有点麻烦了:eclipse对于每个项目会生成一些特定的文件,而这些文件又不是项目必须的,并且每个人的配置是 ...

  2. [Angular 2] ng-control & ng-control-group

    Control: Controls encapsulate the field's value, a states such as if it is valid, dirty or has error ...

  3. 使用jQuery Mobile和Phone Gap开发Android应用程序(转)

    经过了一段时间的学习,初步了解了该如何使用jQuery Mobile和 Phone Gap来开发一个Android应用程序,也想把这些东西介绍给大家. 1. 软件准备 要进行android app的开 ...

  4. State 状态模式

    简介 状态模式允许一个对象在其内部[状态]改变的时候改变其[行为].这个对象看上去就像是改变了它的类一样. 用一句话来表述,状态模式把所研究的对象的[行为]包装在不同的[状态对象]里,[每一个状态对象 ...

  5. 简单html以及css的用法

    我将利用三天的时间来完成制作京东首页的静态页面效果,其中包含的内容有html以及css. 1.在开发进行之前,首先要配置开发环境:我们需要安装sublime  webstorm  vscode  Hb ...

  6. MVC使用Exception过滤器自定义处理Action的的异常

    1.继承FilterAttribute ,IExceptionFilter自定义处理 /// <summary> /// 登录错误自定义处理 /// </summary> pu ...

  7. 使用less函数实现不同背景的CSS样式

    今天在公司遇到一个比较特殊的需求,需要完成这样的布局,如下图: 每一个块的背景需要不同,而其他都是相同的,这时候就应该把背景提出来单独写成一个CSS样式类. 那么问题来了,有四个不同的背景需要写4个基 ...

  8. 【USACO 2.4.5】分数化小数

    [描述] 写一个程序,输入一个形如N/D的分数(N是分子,D是分母),输出它的小数形式. 如果小数有循环节的话,把循环节放在一对圆括号中. 例如, 1/3 =0.33333333 写成0.(3), 4 ...

  9. python3 解析apk图标

    有两处值小点,一是如何解压缩,另一个是如何写文件,第二点上我找的是phthon2的代码,一直写文件的时候报不是字符串的问题,将打开方式加上"b“的模式搞定 print文件出来直接删除了,原因 ...

  10. Android学习-----Button点击事件几种写法

    Button点击事件:大概可以分为以下几种: 匿名内部类 定义内部类,实现OnClickListener接口 定义的构造方法 用Activity实现OnClickListener接口 指定Button ...