fix: replace struts tag forms in learning pages
This commit is contained in:
@@ -102,22 +102,22 @@
|
||||
</div>
|
||||
|
||||
<s:if test="hasActionErrors()">
|
||||
<div class="action-error"><s:actionerror/></div>
|
||||
<div class="action-error"><s:property value="actionErrors[0]"/></div>
|
||||
</s:if>
|
||||
|
||||
<s:form action="upload" method="post" enctype="multipart/form-data" namespace="/">
|
||||
<form action="<s:url action='upload' namespace='/'/>" method="post" enctype="multipart/form-data">
|
||||
<div class="field">
|
||||
<label>主文件</label>
|
||||
<s:file name="upload"/>
|
||||
<label for="upload">主文件</label>
|
||||
<input id="upload" type="file" name="upload"/>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label>附加文件</label>
|
||||
<s:file name="uploads" multiple="multiple"/>
|
||||
<label for="uploads">附加文件</label>
|
||||
<input id="uploads" type="file" name="uploads" multiple="multiple"/>
|
||||
</div>
|
||||
|
||||
<button type="submit">提交并查看上传元数据</button>
|
||||
</s:form>
|
||||
</form>
|
||||
|
||||
<div class="links">
|
||||
<a class="link-btn" href="../dashboard.action">返回仪表盘</a>
|
||||
|
||||
@@ -94,27 +94,33 @@
|
||||
<p style="margin-top: 8px;">依次观察:字段名如何对应 Action 属性、校验错误如何回显、成功页如何读取 Action 结果。</p>
|
||||
</div>
|
||||
|
||||
<s:form action="submitUser" method="post" namespace="/">
|
||||
<form action="<s:url action='submitUser' namespace='/'/>" method="post">
|
||||
<div class="field">
|
||||
<label for="username">用户名</label>
|
||||
<s:textfield id="username" name="username" placeholder="platform-owner"/>
|
||||
<div class="error"><s:fielderror fieldName="username"/></div>
|
||||
<input id="username" name="username" placeholder="platform-owner" value='<s:property value="username"/>'/>
|
||||
<s:if test="fieldErrors['username'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['username'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label for="email">邮箱</label>
|
||||
<s:textfield id="email" name="email" placeholder="platform@example.com"/>
|
||||
<div class="error"><s:fielderror fieldName="email"/></div>
|
||||
<input id="email" name="email" placeholder="platform@example.com" value='<s:property value="email"/>'/>
|
||||
<s:if test="fieldErrors['email'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['email'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label for="phone">手机号</label>
|
||||
<s:textfield id="phone" name="phone" placeholder="13800000000"/>
|
||||
<div class="error"><s:fielderror fieldName="phone"/></div>
|
||||
<input id="phone" name="phone" placeholder="13800000000" value='<s:property value="phone"/>'/>
|
||||
<s:if test="fieldErrors['phone'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['phone'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<button type="submit">提交资料并生成汇总页</button>
|
||||
</s:form>
|
||||
</form>
|
||||
|
||||
<div class="links">
|
||||
<a class="link-btn" href="../dashboard.action">返回仪表盘</a>
|
||||
|
||||
@@ -183,24 +183,28 @@
|
||||
</s:if>
|
||||
<s:else>
|
||||
<s:if test="hasActionErrors()">
|
||||
<div class="action-error"><s:actionerror/></div>
|
||||
<div class="action-error"><s:property value="actionErrors[0]"/></div>
|
||||
</s:if>
|
||||
|
||||
<s:form action="login" method="post" namespace="/">
|
||||
<form action="<s:url action='login' namespace='/'/>" method="post">
|
||||
<div class="field">
|
||||
<label for="username" id="usernameLabel">用户名</label>
|
||||
<s:textfield id="username" name="username" placeholder="admin"/>
|
||||
<div class="error"><s:fielderror fieldName="username"/></div>
|
||||
<input id="username" name="username" placeholder="admin" autocomplete="username" value='<s:property value="username"/>'/>
|
||||
<s:if test="fieldErrors['username'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['username'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label for="password" id="passwordLabel">密码</label>
|
||||
<s:password id="password" name="password" placeholder="123456" showPassword="true"/>
|
||||
<div class="error"><s:fielderror fieldName="password"/></div>
|
||||
<input id="password" name="password" type="password" placeholder="123456" autocomplete="current-password"/>
|
||||
<s:if test="fieldErrors['password'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['password'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<button class="submit-btn" type="submit" id="submitBtn">写入 Session 并进入学习门户</button>
|
||||
</s:form>
|
||||
</form>
|
||||
</s:else>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
@@ -95,33 +95,41 @@
|
||||
<p style="margin-top: 8px;">先故意输入一个短用户名、错误邮箱和超范围年龄,再修正后重新提交,对比两次页面反馈。</p>
|
||||
</div>
|
||||
|
||||
<s:form action="validate" method="post" namespace="/">
|
||||
<form action="<s:url action='validate' namespace='/'/>" method="post">
|
||||
<div class="field">
|
||||
<label for="username">用户名(3 到 20 字符)</label>
|
||||
<s:textfield id="username" name="username" placeholder="release-manager"/>
|
||||
<div class="error"><s:fielderror fieldName="username"/></div>
|
||||
<input id="username" name="username" placeholder="release-manager" value='<s:property value="username"/>'/>
|
||||
<s:if test="fieldErrors['username'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['username'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label for="email">邮箱</label>
|
||||
<s:textfield id="email" name="email" placeholder="release@example.com"/>
|
||||
<div class="error"><s:fielderror fieldName="email"/></div>
|
||||
<input id="email" name="email" placeholder="release@example.com" value='<s:property value="email"/>'/>
|
||||
<s:if test="fieldErrors['email'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['email'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label for="age">年龄(18 到 60)</label>
|
||||
<s:textfield id="age" name="age" placeholder="30"/>
|
||||
<div class="error"><s:fielderror fieldName="age"/></div>
|
||||
<input id="age" name="age" placeholder="30" value='<s:property value="age"/>'/>
|
||||
<s:if test="fieldErrors['age'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['age'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label for="bio">简介</label>
|
||||
<s:textarea id="bio" name="bio" placeholder="描述角色、经验或当前负责的平台方向。"/>
|
||||
<div class="error"><s:fielderror fieldName="bio"/></div>
|
||||
<textarea id="bio" name="bio" placeholder="描述角色、经验或当前负责的平台方向。"><s:property value="bio"/></textarea>
|
||||
<s:if test="fieldErrors['bio'] != null">
|
||||
<div class="error"><s:property value="fieldErrors['bio'][0]"/></div>
|
||||
</s:if>
|
||||
</div>
|
||||
|
||||
<button type="submit">提交并查看校验结果</button>
|
||||
</s:form>
|
||||
</form>
|
||||
|
||||
<div class="links">
|
||||
<a class="link-btn" href="../dashboard.action">返回仪表盘</a>
|
||||
|
||||
Reference in New Issue
Block a user