2017-06-13 3 views
0

spanタグのテキスト値をコントローラに送信するにはどうすればよいですか?Node.jsコントローラにスパン値を送信

user_profile.hbs

<div class="panel panel-default"> 
    <div class="panel-heading">User Profile</div> 
    <div class="panel-body"> 
    <form method="get" enctype="multipart/form-data" action="/home/user/profile/update"> 
     <div> 
     Username: <span id="user_upd">{{user}}</span> 
     </div> 
     <div> 
     Email: <span id="email_upd">{{email}}</span> 
     </div> 
     <div> 
     Type: <span>{{type}}</span> 
     </div> 
    </div> 
    <input type="submit" value="Update Info"/> 
    </form> 
</div> 

userController.js

// Display User update form on GET 
module.exports.userUpdateGet = function(req, res) { 
    console.log(req.body); 
    res.render('user_profile_update', { 
    usename: req.body.username, 
    email: req.body.email, 
    user: req.user.username 
    }); 
} 

そして、これはuser_profile_update図である:私の目標は、入力値としてuser_profile.hbsからの情報を表示することです

<div class="panel panel-default"> 
    <div class="panel-heading">Update User</div> 
    <div class="panel-body"> 
    <form method="post" enctype="multipart/form-data" action="/home/user/profile/update"> 
     <div> 
     <label for="username">Username: </label> 
     <input type="text" name="username" id="username" value={{username}}/> 
     </div> 
     <div> 
     <label for="email">Email: </label> 
     <input type="text" name="email" id="email" value={{email}}/> 
     </div> 
    </div> 
    <input type="submit" value="Save Changes"/> 
    </form> 
</div> 

user_profile_update.hbs

EDIT:

が、私はこのjsコードを使用しようとしましたが、user_profile_updateビューがレンダリングされていない...なぜ?

$(document).ready(function(){ 
    var user,email; 
    $("#submit_update").click(function(){ 
     user= $("#user_upd").text(); 
     email= $("#email_upd").text(); 
     $.get("/user/profile/update", {user: user,email: email}, function(data){ 
     }); 
    }); 
    }); 

答えて

0
<div class="panel panel-default"> 
    <div class="panel-heading">User Profile</div> 
    <div class="panel-body"> 
    <form method="get" enctype="multipart/form-data" action="/home/user/profile/update"> 
     <div> 
     Username: <span>{{user}}</span> 
     </div> 
     <div> 
     Email: <span>{{email}}</span> 
     </div> 
     <div> 
     Type: <span>{{type}}</span> 
     </div> 
    </div> 
    <input type="submit" value="Update Info"/> 
    </form> 
</div> 

変更するには、この私がしたいとより良いでしょう

<div class="panel panel-default"> 
    <div class="panel-heading">User Profile</div> 
    <div class="panel-body"> 
    <form method="get" enctype="multipart/form-data" action="/home/user/profile/update"> 
     <input type="hidden" name="user" value={{user}}/> 
     <input type="hidden" name="email" value={{email}}/> 
     <input type="hidden" name="type" value={{type}}/> 
     <div> 
     Username: <span>{{user}}</span> 
     </div> 
     <div> 
     Email: <span>{{email}}</span> 
     </div> 
     <div> 
     Type: <span>{{type}}</span> 
     </div> 
    </div> 
    <input type="submit" value="Update Info"/> 
    </form> 
</div> 

にあなたはinput hiddenを使用することができますか、フォームonclickのクッキー&を設定するには、JSを使用することができますが、サーバー

+0

からクッキーを取得するときjsを使用しますが、期待されるビューをレンダリングしません。更新された回答のコードを確認してください。 – Valip

関連する問題