プロが教える店舗&オフィスのセキュリティ対策術

<javascript>
myD = new Date();
myYear = myD.getFullYear();
myMonth = myD.getMonth() + 1; if(myMonth < 10) myMonth="0"+myMonth;
myDate = myD.getDate(); if(myDate < 10) myDate="0"+myDate;

myMess1 = myYear + "-" + myMonth + "-" + myDate + "";
function myFunction(){
document.test.data1.value = myMess1;
}
date = document.test.data1.value; //ここでdata1に入ってる情報を取得できない。
</javascript>

<body>
<form name="test" method="POST" action="<?php echo $hogehoge; ?>">
<input name="data1" id="data1" type="text" value="<?php echo $row_test['data1']; ?>" size="20" /> <input type="button" value="当日" onclick="myFunction()">
</body>


ここで、テキストボックスに入ってるDate関数で取得したデータをdate変数に入れたいのですが、それがどうやってもできません。なにが問題かわかる人がいたらお願いします。
もし必要な情報があればいってください。
回答よろしくおねがいします!

A 回答 (3件)

myFunction()を呼び出してdocument.test.data1.valueに値を入れてから、その値を取り出してください。

    • good
    • 0
この回答へのお礼

functionを呼び出してから値を入れるってのがヒントになり見事できました!
ありがとうございました!

お礼日時:2014/07/29 12:45

>Date関数で取得したデータをdate変数に入れたいのですが



言葉通りで良いのなら…
 date = myMess1;
で十分。(フォームから再取得してはいませんが、同じ値なので)

ユーザがformに入力した値を取りたければ、入力後の処理で取得するようにするしてください。
    • good
    • 0
この回答へのお礼

入力後の処理で取得ってのが助けになりました!
ありがとうございました!

お礼日時:2014/07/29 12:44

date = document.test.data1.value;


が実行される時点では、まだbody部分のレンダリングが終わってないからDOMを見つけられてないと思われます。
onloadイベント等で実行すると取れると思います。

この回答への補足

早い回答ありがとうございます!
window.onload = function(){
date = document.test.data1.value;
}


dateの変数をそのまま出力したらPHPの値をそのまま引き継いでまんま現れてしまいました!<?php echo $row_test['data1']; ?>
phpの状態ではなくて、これをちゃんとデータの入った形で取得するにはどうしたらいいのでしょうか? 理想:2014-07-28

補足日時:2014/07/28 19:04
    • good
    • 0
この回答へのお礼

回答ありがとうございました!

お礼日時:2014/07/29 12:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!