Tôi đang cố gắng xác minh nội dung của biểu mẫu trước khi gửi. Về cơ bản, tôi đang cố gắng làm việc với các con số trong biểu mẫu và đảm bảo chúng nằm trong phạm vi chính xác. Vấn đề là JavaScript tôi đang cố gắng xác minh nó nghĩ rằng mục được chuyển đến nó là NaN (tôi đã phân tích nó).Chuyển biểu mẫu biến vào trường onsubmit?
Một công việc nhỏ tiết lộ rằng biến ("size") đề cập đến một "HTMLInputEleMent", mà tôi đoán là, thực sự, NaN (mặc dù tôi không hoàn toàn chắc chắn nó thực sự là gì). Tôi nghĩ rằng vấn đề là onSubmit không phải là đi qua những gì tôi muốn nó được đi qua, mặc dù tôi đặt tên cho lĩnh vực "kích thước" và tôi đã thông qua onSubmit "kích thước" quá.
tôi đã cố gắng đặt nó trong dấu ngoặc kép, nhưng điều đó chỉ biến nó thành một chuỗi ...
Tôi tự hỏi nếu có lẽ bạn không thể vượt qua một biến từ bên trong các hình thức để nó lĩnh vực onSubmit? Là vậy sao? Nếu vậy, tôi nên làm như thế nào?
Dưới đây là hình thức:
<form onsubmit="return goodForm(size, day, month, year)" action="http://localhost:8080/pomper_servlet/CostCalc" method="GET">
The day of the month must be entered as a number (ex: 1,22)
<input type="text" name="day"><br>
The month of the year must be entered as a number (ex: Jan.=1, etc.)
<input type="text" name="month"><br>
The year must be entered as a 4 digit number (ex: 2008, 2017)
<input type="text" name="year"><br>
Please Choose a tour-length, in accordance with the chart below:
<input type="TEXT" name="length"><br>
How many people will be in your group? (No More than 10 allowed!)
<input type="text" name="size"><br>
Please select a tour:<br>
<input type="RADIO" name="tour" value="Gardiner Lake">
Gardiner Lake<br>
<input type="RADIO" name="tour" value="Hellroaring Plateau">
Hellroaring Plateau<br>
<input type="RADIO" name="tour" value="The Beaten Path">
The Beaten Path<br>
<input type="SUBMIT" value="Submit">
</form>
Và đây là chức năng, từ functions.js:
function goodForm(gSize, day, month, year) {
"use strict";
window.alert("goodFrame(): "+gSize);
var groupSize1 = parseInt(gSize.replace(/^"|"$/g, ""), 10);
window.alert("goodFrame(): "+groupSize1);
var sizeInt = parseInt(groupSize1);
if(groupSize(sizeInt) && goodDate(day, month, year)){
window.alert("true");
return true;
}
else{
window.alert("false")
return false;
}
Có tham chiếu đến các chức năng khác trong đó, nhưng họ không liên quan đến điều này, tôi nghĩ vậy. Các cảnh báo là/dành cho mục đích gỡ lỗi ...
Cảm ơn bạn trước!
Bạn có thể tra cứu trường bằng ID bên trong phương thức onsubmit không? – oooyaya
Er ... có thể - làm thế nào để tôi làm điều đó (tôi khá mới với điều này, trong trường hợp chưa trở nên rõ ràng ...) –
Xem câu trả lời bên dưới. Tôi sẽ giải thích. – oooyaya