質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Struts

StrutsはJava向けのWebアプリケーションフレームです。MVCモデルに基づいており、JSPやJavaサーブレットを組み合わせ、アプリケーション構築時に使用する各機能を提供しています。

Q&A

0回答

416閲覧

struts-validationでチェックする項目をボタンによって制御するには?

takuson

総合スコア36

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Struts

StrutsはJava向けのWebアプリケーションフレームです。MVCモデルに基づいており、JSPやJavaサーブレットを組み合わせ、アプリケーション構築時に使用する各機能を提供しています。

0グッド

0クリップ

投稿2022/09/28 06:00

編集2022/09/29 01:35

前提

struts-validationを使用して入力チェックを行おうと考えています。
その際、画面で押下したボタンによってチェックする項目を制御できないかと考えています。
たとえば、画面に入力項目①と②、ボタン①と②があったとして、ボタン①を押した際は入力項目①をチェックする。
ボタン②を押した際は入力項目②をチェックするみたいな感じです。

実現したいこと

struts-validationを使用して、ボタンによる入力項目のチェック制御を行いたい

試したこと

画面の入力項目すべてに対してvalidationでチェックが行われることは確認済み

ソース

sample.jsp

1<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 2<%@ page language="java" %> 3<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> 4<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> 5 6<html:html> 7 <head> 8 <title>入力フォーム</title> 9 </head> 10 <body> 11 <html:form action="sampleAction"> 12 <html:errors/> 13 <html:text property="input1" size="10" maxlength="7"/> 14 <html:submit property="submut1" value="送信" /> 15 <br> 16 <html:text property="input2" size="10" maxlength="7"/> 17 <html:submit property="submut2" value="送信" /> 18 </html:form> 19 </body> 20</html:html>

validation.xml

1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE form-validation PUBLIC 3 "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN" 4 "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd"> 5<form-validation> 6 <formset> 7 <form name="SampleForm"> 8 <field property="input1" depends="integer"> 9 <arg key="入力欄1" resource="false"/> 10 </field> 11 <field property="input2" depends="integer"> 12 <arg key="入力欄2" resource="false"/> 13 </field> 14 </form> 15 </formset> 16</form-validation>

struts_config.xml

1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE struts-config PUBLIC 3 "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" 4 "http://struts.apache.org/dtds/struts-config_1_2.dtd"> 5 6<struts-config> 7 8 <form-beans> 9 <form-bean name="SZ01S001Form" type="sample.SZ01S001Form"/> 10 <form-bean name="SampleForm" type="sample.SampleForm"/> 11 </form-beans> 12 13 <global-exceptions/> 14 <global-forwards/> 15 16 <action-mappings> 17 18 <action name="SampleForm" 19 path="/sampleAction" scope="request" 20 type="sample.loginAction" 21 input="/jsp/sample.jsp" 22 validate="true"> 23 <forward name="homeAction" path="/jsp/home.jsp"/> 24 </action> 25 </action-mappings> 26 27</struts-config> 28

sampleForm.java

1package sample; 2 3public class SampleForm { 4 private String input1; 5 6 private String input2; 7 8 public String getInput1() { 9 return input1; 10 } 11 12 public void setInput1(String input1) { 13 this.input1 = input1; 14 } 15 16 public String getInput2() { 17 return input2; 18 } 19 20 public void setInput2(String input2) { 21 this.input2 = input2; 22 } 23 24} 25

補足情報(FW/ツールのバージョンなど)

・windows10
・Eclipce
・Java 8
・Tomcat v8.0
・struts 1.2.9 (struts2でも可)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jimbe

2022/09/28 07:09

> 画面の入力項目すべてに対してvalidationでチェックが行われることは確認済み そのコードをご提示頂いて、その中でどのボタンの時だけどの項目をチェックするようにしたいのかを書いて頂けますか。
takuson

2022/09/29 01:39

試したソースを追記しました。 実現したいことは、input1のチェックはsubmit1をクリックしたとき、input2のチェックはsubmit2をクリックしたときに行われるようにしたいです。 現状のソースだと、片側一方のボタンをクリックするとinput1,input2両方にチェックが行われます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問