私は以下のようにphpを持っています。ページにはJavaScriptのバリデーションがいくつかあります。私はサイトfound hereにあるgen_validatorv4.jsを利用しています。javascriptフォームの検証 - フォーム送信時に2つのスクリプトを呼び出す
このスクリプトは完全に機能しますが、日付の時間フィールドで比較の検証を行うことはできません。これを行うには、私は別のstackoverflow投稿found hereの助けを得ました。 @ RobGに感謝してくれてありがとう。
私の問題は、両方のスクリプトをページに追加すると、1つだけ動作し、もう一方は無効になるということです。フォームを提出するときに、どのようにして両方のコードセットを呼び出すことができますか?
私の完全なコードは、以下のとおりです。事前にお礼をいただきありがとうございました。 ライアン
<html>
<head>
<title>
</title>
<script src="datetimepicker_css.js"></script>
<script language="JavaScript" src="gen_validatorv4.js" type="text/javascript" xml:space="preserve"></script>
</head>
<body>
<?PHP
$usernname1=$session->username;
//trailers
$trailers="SELECT vehicletypename from vehicletypes";
$resulttrailer=mysql_query($trailers);
$optionstrailer="";
while ($row=mysql_fetch_array($resulttrailer)) {
$trailer=$row["vehicletypename"];
$optionsdelivery.="<OPTION VALUE=\"$trailer\">".$trailer;
}
//Source
$sources="SELECT sourcename from shuttlesources";
$resultsources=mysql_query($sources);
$optionssources="";
while ($row=mysql_fetch_array($resultsources)) {
$sourcename=$row["sourcename"];
$optionssources.="<OPTION VALUE=\"$sourcename\">".$sourcename;
}
//Destination
$destination="SELECT destinationname from shuttledestinations";
$resultdestination=mysql_query($destination);
$optionsdestination="";
while ($row=mysql_fetch_array($resultdestination)) {
$destinationname=$row["destinationname"];
$optionsdestination.="<OPTION VALUE=\"$destinationname\">".$destinationname;
}
//routes
$routesql="SELECT routename from deliveryroutes where transporttype='localpmb'";
$resultdestination=mysql_query($routesql);
$optionsroute="";
while ($row=mysql_fetch_array($resultdestination)) {
$routename=$row["routename"];
$optionsroute.="<OPTION VALUE=\"$routename\">".$routename;
}
?>
<form onsubmit="return checkDates(this)" name="myform" id="myform" action=captureshuttledelivery2.php method=post>
<font color=red><b>Provide information to create shuttle delivery</b></font><br><br>
<table>
<tr>
<td width=150>
<font color=blue>TRAILER
</td>
<td width=150>
<font color=blue>SOURCE
</td>
<td width=150>
<font color=blue>WEIGHT
</td>
</tr>
<tr>
<td>
<SELECT NAME=trailer style="width:140px;">
<OPTION VALUE=0>
<?=$optionsdelivery?>
</SELECT>
</td>
<td>
<SELECT NAME=source style="width:140px;">
<OPTION VALUE=0>
<?=$optionssources?>
</SELECT>
</td>
<td>
<input type=text name=weight id=weight>
</td>
</tr>
<tr>
<td width=150>
<font color=blue>REF NUMBER 1</b></font>
</td>
<td width=150>
<font color=blue>REF NUMBER 2</b></font>
</td>
<td width=150>
<font color=blue>REF NUMBER 3</b></font>
</td>
<td width=150>
<font color=blue>REF NUMBER 4</b></font>
</td>
</tr>
<tr>
<td>
<input type=text name=refnumber id=refnumber>
</td>
<td>
<input type=text name=refnumber2 id=refnumber2>
</td>
<td>
<input type=text name=refnumber3 id=refnumber3>
</td>
<td>
<input type=text name=refnumber4 id=refnumber4>
</td>
</tr>
<tr>
<td>
<font color=blue>COLLECTION TIME
</td>
<td>
<font color=blue>DELIVERY TIME
</td>
</tr>
<tr>
<td>
<input type="text" id="collectdatetime" name="collectdatetime">
<img src="images2/cal.gif" onclick="javascript:NewCssCal ('collectdatetime','yyyyMMdd','dropdown',true,'24')" style="cursor:pointer"/>
</td>
<td>
<input type="text" id="deliverdatetime" name="deliverdatetime" >
<img src="images2/cal.gif" onclick="javascript:NewCssCal ('deliverdatetime','yyyyMMdd','dropdown',true,'24')" style="cursor:pointer"/>
</td>
</tr>
<tr>
<td colspan=4>
<font color=blue>COMMENTS
</td>
</tr>
<tr>
<td colspan=4>
<input type=text name=comments id=comments size=100 value=none>
</td>
</tr>
</table>
<table>
<tr><td>
<input type=submit name=submit id=submit value="Save Delivery">
</td></tr></table>
</form>
<script>
function checkDates(form) {
if (form.collectdatetime.value >= form.deliverdatetime.value) {
alert('Collection time must be after deliver time');
return false;
}
}
</script>
<script language="JavaScript" type="text/javascript" xml:space="preserve">
//<![CDATA[
//You should create the validator only after the definition of the HTML form
var frmvalidator = new Validator("myform");
frmvalidator.addValidation("trailer","dontselect=0","Please select a TRAILER TYPE");
frmvalidator.addValidation("source","dontselect=0","Please select a SOURCE");
frmvalidator.addValidation("weight","req","Please enter the LOAD WEIGHT");
frmvalidator.addValidation("weight","numeric","Entered LOAD WEIGHT not a number");
frmvalidator.addValidation("refnumber","req","Please enter at least one REFERENCE NUMBER");
frmvalidator.addValidation("refnumber","numeric");
frmvalidator.addValidation("collectdatetime","req","Please enter a COLLECTION DATE AND TIME");
frmvalidator.addValidation("deliverdatetime","req","Please enter a DELIVERY DATE AND TIME");
//]]>
</script>
</body>
</html>
@mplungjanなぜあなたはコメントとして投稿しますか?質問に対するコメントではなく、決定的な答えです。これは、Ryan Smithがこれを正解とすることができないため、絶対に意味をなさない。目的の説明を教えてください! – Matmarbon
@mplungjan私はそれは良い答えだと思うが、それは良いコメントだとは思わない。私は似たような答えを待つつもりです。私はそれが原理的な問題であると認めますが、私はStackoverflowのどこにいてもこれらのコメントを好きではありません。 – Matmarbon
Okeee .......... - コメントを削除し、回答として投稿 – mplungjan