私はnodejsプロジェクトをmongodbと統合しました。ここで私は学生リストをデータベースから取得したヒスイファイルを作成しました。各生徒記録に対して、編集ボタンがあります。したがって、ユーザーが編集ボタンをクリックすると、ユーザーはその学生のレコードを編集できるフォームを表示する別の玉(editstudent.jade
)ファイルにユーザーをリダイレクトする必要があります。他のjadeファイルのJadeファイルから渡されたアクセス変数
これを達成するために、studentList.jade
ファイルに次の表を作成しました。
studentList.jade
extends layout
block content
h1.
Student List
table
tr
th.
Name
th.
Age
th.
Contact
th.
Edit Student
th.
Delete Student
each student, i in studentlist
tr
td(id='studentname') #{student.name}
td #{student.age}
td
a(href="mailto:#{student.email}")=student.email
td
button(onclick='editstudent("#{student.name}")')= "Edit"
td
button(onclick='removestudent()')= "Remove"
script.
function editstudent(gh) {
alert("Edit "+gh+"'s Profile");
window.location.href = '/editstudent?gh=' + gh;
}
出力
それは最初の引数&として名を渡し、次のように警告をポップアップ表示編集ボタンをクリックします。
ポップアップ警告
そして私は、私はindex.js
index.jsから呼び出していますeditstudent
ページのタイトルとして、この名前を表示したいと思います
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
/* GET student welcome page. */
router.get('/studentIndex', function(req, res, next) {
res.render('studentIndex', { title: 'Student Portal' });
});
/*GET the studentList page */
router.get('/studentList', function(req, res) {
var db = req.db;
var collection = db.get('studentcollection');
collection.find({},{},function(e,docs){
res.render ('studentList', {
"studentlist" : docs});
});
});
/* GET the editStudent page */
router.get('/editstudent', function(req, res) {
res.render('editstudent', { title : gh});
});
module.exports = router;
しかし、私は現在、
GHは私が渡すことができますどのように
editstudent.jade
extends layout
block content
h1 = title
p Welcome editor
button(onclick = 'backToList()')="Back"
script.
function backToList() {
window.location.href = '/studentList'
}
任意の提案を定義されていないことを言及するエラーを取得していますこの変数は私のリダイレクトされたページ(editstudent.jade
)になりますeciated。
ありがとうございます。出来た –