当我提交此表单时,值只会从文本框中消失。我喜欢他们留在文本框中打印。我该怎么做?
<form id="myform" method="get" action="" onSubmit="hello();">
<input id="hour" type="text" name="hour" style="width:30px; text-align:center;" /> :
<input id="minute" type="text" name="minute" style="width:30px; text-align:center;" />
<br/>
<input type="submit" value="Validate!" />
</form>
<style type="text/css">
.error {
color: red;
font: 10pt verdana;
padding-left: 10px
}
</style>
<script type="text/javascript">
function hello(){
var hour = $("#hour").html();
alert(hour);
}
$(function() {
// validate contact form on keyup and submit
$("#myform").validate({
//set the rules for the fild names
rules: {
hour: {
required: true,
minlength: 1,
maxlength: 2,
range:[0,23]
},
minute: {
required: true,
minlength: 1,
maxlength: 2,
range:[0,60]
},
},
//set messages to appear inline
messages: {
hour: "Please enter a valid hour",
minute: "Please enter a valid minute"
}
});
});
</script>
答案 0 :(得分:9)
提交页面后,数据将立即发送到服务器并加载新页面。在您的情况下,这是与以前相同的页面,但这对浏览器没有影响。要保留这些值,您必须在呈现页面时填写服务器上的值。
通常,您只需将HTML请求参数中的数据复制到字段中即可。
答案 1 :(得分:4)
提交表单时,整个页面将替换为来自服务器的响应。如果您想留在页面上(而不是将其替换为响应),您可能会考虑使用jQuery.post
或jQuery.ajax
将表单数据发送到服务器而不是实际提交表单。
答案 2 :(得分:1)
在表单标记中,包含onsubmit ="return false"
以避免表单重置。
例如:
<form name = "inputNumbers" onsubmit ="return false">
答案 3 :(得分:0)
您可以使用JavaScript中的Cookie来保留值。基本上,您可以访问名为document.cookie
的内容。
答案 4 :(得分:0)
例如,要将数据保留在文本输入中:
<input type="text" name="inputText" id="inputText" placeholder="Enter the name of your all-time favorite Duckbilled Platypus" value="@Request["inputText"]" autofocus style="display: inline-block;" />