1

学生の名前、ID、年齢を表示するサンプルのSpring MVCプログラムを作成しました。テキストフィールドへの数字の入力と年齢の文字列の入力を制限したい。また、id フィールドを必須にしたいと考えています。ビューにJSPを使用しています。

たくさん検索しましたが、適切な解決策が見つかりません。ご協力をお願いします。よろしくお願いします。これはjspファイルです

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html>
<head>
<title>Spring MVC Form Handling</title>
 </head>
<body>

<h2>Student Information</h2>

 <form:form method="POST" action="addstudent">

<table>
  <tr>
     <td><form:label path="name" id="tct" >Name</form:label></td>
    <td><form:input path="name" /></td>

</tr>

<tr>

    <td><form:label path="age">Age</form:label></td>
    <td><form:input path="age" /></td>

</tr>
<tr>
    <td><form:label path="id">id</form:label> </td>
    <td><form:input path="id" /></td>
</tr>
<tr>
    <td colspan="2">
        <input type="submit" value="Submit"/>

    </td>

</tr>

</table> 

</form:form>

これは私が見つけた検索結果でした

テキスト ボックスに入力する文字を制限する

テキストボックスへの入力を制限する: 数字と小数点のみを許可する

http://www.cambiaresearch.com/articles/39/how-can-i-use-javascript-to-allow-only-numbers-to-be-entered-in-a-textbox

このリンクが機能する場合は、JSP ファイルと統合するのを手伝ってください。私は JavaScript と HTML の初心者です。

前もって感謝します

4

1 に答える 1

0

数値以外のフィールドの場合: 考えられる解決策の 1 つは、keyup 関数を使用して、入力中にテキスト フィールドに出現するすべての数値を置き換えることです (jQuery を使用)。

$(".textfield").keyup(function(){
    var textfield= $(this).val();
    var newtext=textfield.replace(/[0-9]/g, '');
    $(this).val(newtext);

});

数値のみのフィールドの場合: 上記と同様のものを使用できますが、正規表現を次のように置き換えます。

 var newtext=textfield.replace(/[A-Za-z$-]/g, "");

id の場合: フォーム送信時にフォーム検証を使用します。まず、フォームに ID/名前を付けます。

$("form").submit(function(){
    var idField= $(#idField).val();
    if(idField.length > 0){ //form ok

    }else{ //form not ok. error message
      alert('error');
    }
});

上記のコードを実際に完全にテストしたわけではないので、修正をお願いします。

それが役に立てば幸い

于 2013-06-03T00:58:34.977 に答える