もくじ
運用しているLIFFアプリでwindow.prompt()を使っているのだけれど、ある時から、promptのデフォルトメッセージそのままだと処理が進行しないというバグ報告をもらった。
該当の部分はこちら
if (comment = window.prompt("[ユーザー名:" + displayname + "]で申込します。\n\nコメントをどうぞ!","よろしくおねがいします")) {
こちらがデフォルトの"よろしくおねがいします"のまま確認ないしはOKを押すとcommentには"よろしくおねがいします"が入力されるはずだが、commentは""のままらしくif文が通らないらしい。prompt画面でメッセージを修正すると、問題なく修正されたメッセージが入る。
検証してみた。
以下のようなhtmlを作成
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>LIFF window.confirm test</title>
</head>
<body>
<input type="button" onClick="buttonclick()" value="button"></input>
<p>output : <span id="output"></span></p>
<script>
function buttonclick(){
let comment = window.prompt("LIFFブラウザでwindow.prompt()でdefaultメッセージから変更しない場合、OKを押しても値が渡りません","default message");
if(comment){
document.getElementById("output").innerHTML = comment;
}
}
</script>
</body>
</html>スマホブラウザから実行すると問題なくpromptの返り値がデフォルトでも表示される
だがLIFFで実行した場合、デフォルトのままだと返り値はemptyで、変更して初めて戻り地がメッセージになった
ぜひ手元の端末で以下のURLから試して欲しい
Tap here to open the link....
liff.line.me
ここで報告してみた

We've migrated the following contents from the LINE Developers Community site to the LINE Developers...
developers.line.biz
もくじ
キミを探す、夏 開発秘話
2021年11月5日(金) 22時43分0秒 | 491 view11/28を過ぎて停止したHerokuアプリを課金して復旧した方法
2022年12月6日(火) 4時50分5秒 | 180 view【Web表現チェンジャー】PlayCanvasに追加された3Diframeサンプルが控えめに言ってヤバい
2021年1月13日(水) 15時21分41秒 | 117 viewmarkdownエディタ「Tale」をリリースしました。
2023年12月4日(月) 15時24分57秒 | 114 viewncmbのREST APIでエラー{"error":"12.16.1 is invalid version","status":400,"code":"E400001"}が出る
2022年10月9日(日) 12時41分30秒 | 24 view