2017-03-27 5 views
0

私はテキストフィールドから値を取得し、それを変数をレンダリングして、その場で表示できるように、ejsに渡そうとしています。私はjquery stepsを使用しています。最初のステップで私の名前を入力します。 2番目のステップでその名前を表示したいと思います。javascript to ejs

var form = $("#form").show(); 
$("#form").steps({ 
    headerTag: "h3", 
    bodyTag: "section", 
    transitionEffect: "slideLeft", 

onStepChanged: function (event, currentIndex, priorIndex){ 
if (priorIndex == 1) 
    { 
    fname = $('#fname').val(); 
    } 
}); 

私はこのfnameは、次のステップまたは任意のビューに表示されるようにしたいと思う:ここ はjavascriptのコードがあります。したがって、変数をjavascriptロジックからejに渡すことについての助けは、非常に貴重です。

答えて

0

私は疑問を理解していますが、EJSはJavaScriptが動作する前に一般的に処理されるテンプレート言語です。たとえば、サーバー側のレンダリングでよく使用されます。サーバーは要求を受け取り、EJSテンプレートを処理し、HTMLを返します。 EJSは一般に、JavaScriptの前にいくつかのステップがあり、両者は相互に作用しません。したがって、JavaScript変数の値をEJS変数に渡す方法はありません。

ただし、JavaScriptを使用して次の手順で値を更新することはできます。したがって、DOM内の要素を検索し、onStepChanged関数のテキスト値を更新するだけで済みます。 jQueryを使用すると、次のようになります。

$("#nameContainer").text($('#fname').val());