1
私はRアプリケーションのログインフォームをコーディングしています。 1つのことを除いてすべてうまくいきます:キーアップイベントが発生するたびにMD5でパスワードを暗号化します。これまでのところ、正しい結果が得られます。送信ボタンをクリックすると問題が発生します。私はRでこの暗号化された入力からテキストを読み取ろうとしますが、Shinyは""、つまり空の文字列を読み取ります。私はそれを確認したし、確かに空ではない。唯一の方法は、この暗号化された入力からシャイニーが何かを読んだり、手動で何かを入力することです。自動的に入力された入力がシャイニーで読み取られない
バックエンドでこのパスワードを読み取るにはどうすればよいですか?以下、私のHTML、JS、Rのコードです。私が意図したとおりにそれを動作させることができ@warmoverflowへ
<div class="col-md-4">
<form role="form">
<div class="form-group">
<label for="user"> User (test) </label>
<input type="text" name="user" class="form-control shiny-bound-input" id="user" />
</div>
<div class="form-group">
<label for="password"> Password (test) </label>
<input type="password" name="password" class="form-control shiny-bound-input"
id="password"/>
<input type="password" name="pass" class="form-control shiny-bound-input"
id="pass" style="display:none;"/>
</div>
<button id="loginButton" type="button" class="btn btn-default action-button shiny-bound-input">Login</button>
</form>
</div>
$(function() {
$("#password").keyup(function(){
$("#pass").val(md5($("#password").val()));
});
});
if (input$loginButton > 0) {
Username <- isolate(input$user)
Password <- isolate(input$password)
print(Password)
}
おそらく 'Shiny.onInputChange' JavaScriptを使ってパスワードをバックエンドに送ることができます。 'Shiny.onInputChange(" encrypted_pass "、md5(...));をあなたのjsコードのどこかに追加し、' input $ encrypted_pass'でアクセスしてください。 –