Re:Re:メールフォームプロ4

keiさん (2020-03-18 19:05:58) gpc.main.jp/contact5.html

先日投稿させてもらいました。立て続きですみません。
設置URL内に希望見学日という項目があり、
第一希望日にカレンダー型の日にち入力を設置しましたが、
カレンダー内のボタン押して、日にちが反映されても必須の警告が消えません。もう一度ボタンを押した際と、入力欄をカーソルで合わせると消えますが、原因がわかりません。ご教授お願いできますでしょうか。よろしくお願いいたします。

Re:Re:Re:メールフォームプロ4

和田 (2020-03-18 21:33:27) www.synck.com

外部スクリプト側で該当の日付がvalueにセットされたあとにblurをさせる必要があります。

Re:Re:Re:メールフォームプロ4

keiさん (2020-03-18 22:29:54) gpc.main.jp/contact5.html

ご回答ありがとうございます。
いただいた情報を元に調べてみましたが、何分素人な者で、記述の仕方がわかりません。
以下は、とあるサイトから抜粋したものですが、このソースをヘッダ内に貼りつけて改善されますでしょうか?
以下てす。

$(function() {

//テキストボックスのフォーカスが外れたら発動
$(’input[type="text"]’).blur(function() {

//もしテキストボックスが空だったら
if ($(this).val() == ’’) {

//隣の要素に警告文を表示する
$(this).next().text(’入力してください!’);

//テキストボックスに文字が入力されたら
} else {

//隣の要素の警告文を消す
$(this).next().text(’’);

});
});

お手数おかけしますが、よろしくお願いいたします。

Re:Re:Re:メールフォームプロ4

和田 (2020-03-19 09:51:20) www.synck.com

上記のコードでは動作しません。
ご利用のdatepickerの種類にもよりますが概ねcallbackが用意されているので、そのcallback時に該当エレメントのフォーカスをblurするようにしていただくことでおそらくご希望の動作になると思います。

datepickerで日付を選択した際に任意のスクリプトを実行する(いわゆるコールバック関数)という機能が実装されていると思いますので、ご利用のdatepickerの仕様をご参照ください。

Re:Re:Re:メールフォームプロ4

keiさん (2020-03-19 11:58:24) gpc.main.jp/contact6.html

ご回答ありがとうございます。

度々申し訳ございません。
サイト等を参考にし、記述しましたが、
自分には思うように出来ませんでした。


$("input:text").blur(function() {
console.log("Blur!!");
});

や、

$(function() {

//ボタンをクリックしたら発動
$(’button’).click(function() {

//div要素にテキストボックスを追加
$(’div’).append(’<input type="text" name="text_box">’);

});

//上で生成した要素に普通のblur()を発動
$(’input[type="text"]’).blur(function() {

//背景色を変える
$(this).css(’background’, ’#fff’);

});
});

もしこの問題を解決していただくとしましたら、どれくらいの費用でお願いできますでしょうか。

Re:Re:Re:メールフォームプロ4

和田 (2020-04-02 21:02:46) www.synck.com

すいません、回答がべらぼーに遅れてしまって申し訳ございません・・・。
ご利用のピッカーがJqueryUIのものであれば、たぶん

$(function() {
$.datepicker.setDefaults( $.datepicker.regional[ "ja" ] );
$("#calendar").datepicker({
dateFormat: ’yy年mm月dd日DD’,
onSelect: function(date){
$("#calendar").blur();
}
});
});
で動くのではないかなと思います。