網站作業布置批改功能重寫基本完成,記錄一下

來源:互聯網
上載者:User

既然是重寫,比以前當然改進了很多。

        原先,布置的作業沒有指定給誰做的,如果有作業系統,嵌入式系統原理2門課,某生選了作業系統,但他還可以對嵌入式原理的作業進行提交。這樣學生當然沒有什麼損失,不過老師批作業的時候就比較蛋疼了。還得把沒選這門課的學生的作業剔除。

        另外,對布置作業的介面也處理了一下,雖然只有一個彈出框,但還是整了一個下午,其中包括對js和css不是很熟,還是就是關於kindeditor的非同步載入(後來查了官方例子也搞定了)

布置作業介面:因為這個功能只有一個老師會用到,所以也懶得再寫js去對日期的合法性等做檢查了

這個介面實際就是一個div類比的彈出框,我個人比較喜歡這樣的效果,後面也加了一層半透明的面罩,看上去更ok了

由下拉式功能表,教師可以選擇這一份作業時哪門課程的,如果一學期剛開學,需要添加新的科目,可以選中"其他":

, 前面說到光這個就搞了半天,一點不誇張,因為之前根本不知道這個快顯視窗prompt("請輸入要添加的課程名稱","");

百度的時候各種亂七八糟的關鍵字:

js 彈出框

js 彈出框 可以輸入

……

後來無奈只能上w3cshcool上去查了下js。

開啟框到確定布置作業,全部用到了ajax(當然用了jquery, 純js不會)

也不知道我這樣的水平算不算會jquery呢?

ajax只用到過$.post(), $.get(), load()

平時彈出div只會用最簡單的toggle(), show(), hide() fade()...

animate() 沒用有過,ps:可能拼錯了~

以前只會用$("#id").val()或$(".class").val()取值, 今天會了一個  $("input[name=title]").val()

css:

1)以前一直不知道怎麼讓彈出div絕對位置, 且置中,上網看了一下, 看到用了很多代碼,實在不想直接copy,突然想到用jquery,代碼如下:

w = document.body.scrollWidth;

box.css("left", (w - 700) / 2);//700是彈出框寬度,最好也用jquery取一下

2)之前一直不知道怎麼讓彈出div不動(即就算我拉捲軸,div相對於螢幕還是不動的)

原來可以這樣:

div{

      position:fixed;

}

以前只知道position可以有relative和absolute

附上一段kindeditor官方非同步載入編輯器的代碼

$.getScript('/os/editor/kindeditor.js', function() {KindEditor.basePath = '/os/editor/';editor = KindEditor.create("#editor", {height:300, width:700});});

Hibernate:

關於對象持久態和瞬態

public boolean save(Homework homework) {boolean flag = true;try{Session session = HibernateSessionFactory.getSession();Transaction tx = session.beginTransaction();session.save(homework);homework.setUrl("showHomework.action?id=" + homework.getHid());//根據主鍵設定urltx.commit();session.close();}catch (Exception e) {e.printStackTrace();flag = false;}return flag;}

因為url中有主鍵hid, 而hid是自增的,所以只有先儲存對象,再更新對象。

由於session.save(homework) 後homework為持久態, 此時對homework進行就該最後將更新到資料庫中。

以前怎麼做的呢:

HomeworkServiceImpl.java:

ave(homework);

homework = get(homework);

homework.setUrl()

update(homework)

現在看看比較可笑。

不寫了。

end

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.