我想在JSP上的文本框中设置默认值,并且在编辑时,应该存储新值。
对于Ex:
假设我有一个标签名称为“No Of Days”的文本框,因此页面加载360应该出现在文本框中。当用户将其编辑为250时,则应该保存250,当用户再次访问同一页面时,250应该出现在框中,如果用户没有输入任何内容,则360应该来。
有人请帮助我。
答案 0 :(得分:0)
我想在JSP上的文本框中设置默认值,并且在编辑时,应该存储新值。
您可以使用JavaScript
<script type="text/javascript">
window.onload = function()
{
document.getElementById("noOfDays").value = 360; //assuming input text id is "noOfDays"
};
</script>
在每个页面上,加载文本字段默认值始终为360,除非用户输入任何新值。
当用户编辑此假设为250时,应该保存250?
哪里?要数据库?
使用上面的JavaScript代码,您可以将文本字段值编辑为250,但是您需要保存一些位置,例如数据库,因为重新加载页面时将刷新值250,再次您将看到360。
您可以将表单提交给一个servlet,servlet将保存用户输入的值。在这种情况下,您不需要使用上面的JavaScript代码。您可以从servlet获取保存的值,如果value不存在,那么您可以设置为默认值360并显示在JSP上。
请提供一些代码,您尝试了哪些进一步的帮助。
答案 1 :(得分:0)
使用Logic Present和Logic Notpresent标签。 将默认值放在Logic Notpresent标记中,并在Logic Present标记中放入从数据库获取存储值的行代码。
例如:
<logic:notPresent name="name1">
<html:text property="propertyName" styleClass="text" styleId="propertyId" value="defaultValue" ></html:text>
</logic:notPresent>
<logic:present name="name1">
<html:text property="propertyName" styleClass="text" styleId="propertyId" value="${requestScope.var[0].noOfDays}" ></html:text>
</logic:present>
此处以noOfDays
为例。放入您声明的变量名。