Dashboardで入力した内容を出力したい.
解決したいこと
ui-templateを使用して,出力部からmsg変数を出力したい.
例)
現在大学で,Node-REDを学んでいるものです.
Node-REDを使用して,新規登録フォームを作成していたところ,自分ではこれ以上の解決方法が見つかりません.
皆さんのお力を貸していただけないでしょうか.
発生している問題・エラー
ui-templateにformで入力する欄を作成し,「登録」というボタンを押すと,
msg変数に入力された内容が格納され,その変数を出力したいのですが,ui-templateノードの出力をデバックノードに接続しても,なにも出力されません.
もともと,httpノードを利用すればできていたのですが,他の方法も試したいと思い,プログラムを修正していたら,このような問題が起きてしまいました.どうしてもこの問題を解決したいです.
該当するソースコード
<head>
<meta charset="UTF-8">
<title>訓練者 新規登録</title>
</head>
<body>
<h1>訓練者 新規登録</h1>
<p>以下の情報を入力してください。</p>
<form id="registrationForm">
<p>ユーザID</p>
<input name="username" value="" required>
<p>パスワード</p>
<input name="password" value="" required>
<p>訓練日数</p>
<select name="trainingdays" required>
<option value="">-選択してください-</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
<p>セッション数</p>
<select name="sessions" required>
<option value="">-選択してください-</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
<p>ブロックセット数</p>
<select name="blocksets" required>
<option value="">-選択してください-</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
<p>訓練方向</p>
<select name="lrclassification" required>
<option value="">-選択してください-</option>
<option value="LEFT">LEFT</option>
<option value="RIGHT">RIGHT</option>
</select>
<p>刺激種類</p>
<select name="stimcategory" required>
<option value="">-選択してください-</option>
<option value="SSSEP">SSSEP</option>
<option value="SSVEP">SSVEP</option>
</select>
<p>刺激周波数(左)</p>
<select name="l_stimfrequency" required>
<option value="">-選択してください-</option>
<option value="10">10 Hz</option>
<option value="11">11 Hz</option>
<option value="12">12 Hz</option>
<option value="13">13 Hz</option>
<option value="14">14 Hz</option>
<option value="15">15 Hz</option>
<option value="16">16 Hz</option>
<option value="17">17 Hz</option>
<option value="18">18 Hz</option>
<option value="19">19 Hz</option>
<option value="20">20 Hz</option>
<option value="21">21 Hz</option>
<option value="22">22 Hz</option>
<option value="23">23 Hz</option>
<option value="24">24 Hz</option>
<option value="25">25 Hz</option>
<option value="26">26 Hz</option>
<option value="27">27 Hz</option>
<option value="28">28 Hz</option>
<option value="29">29 Hz</option>
<option value="30">30 Hz</option>
</select>
<p>刺激周波数(右)</p>
<select name="r_stimfrequency" required>
<option value="">-選択してください-</option>
<option value="10">10 Hz</option>
<option value="11">11 Hz</option>
<option value="12">12 Hz</option>
<option value="13">13 Hz</option>
<option value="14">14 Hz</option>
<option value="15">15 Hz</option>
<option value="16">16 Hz</option>
<option value="17">17 Hz</option>
<option value="18">18 Hz</option>
<option value="19">19 Hz</option>
<option value="20">20 Hz</option>
<option value="21">21 Hz</option>
<option value="22">22 Hz</option>
<option value="23">23 Hz</option>
<option value="24">24 Hz</option>
<option value="25">25 Hz</option>
<option value="26">26 Hz</option>
<option value="27">27 Hz</option>
<option value="28">28 Hz</option>
<option value="29">29 Hz</option>
<option value="30">30 Hz</option>
</select>
<br><br>
<button type="button" onclick="submitForm()">登録</button>
<input type="reset" value="取消">
</form>
<script type="text/javascript">
function submitForm() {
var form = document.getElementById("registrationForm");
var formData = new FormData(form);
var data = {};
formData.forEach((value, key) => {
data[key] = value;
});
// Node-REDにメッセージを送信
var msg = { payload: data };
send(msg); // ここでNode-REDにメッセージを送信
}
</script>
</body>
0