
至于js回传,去看看__dopostback()函数,都说了就没有意思了,自己看下吧 挺简单。
实在没头绪你就创建个LinkButton,然后双击后运行,在ie页面代码中看看系统是怎么写的
表单提交有很多方法:一、最常见的就是type="submit"的按钮触发form的onsubmit事件
<scripttype="text/javascript">
function validateForm(){
if(document.reply.title.value== ""){ //通过form名来获取form
alert("pleaseinput the title!")
document.reply.title.focus()
returnfalse
}
if(document.forms[0].cont.value== ""){ //通过forms数组获取form
alert("pleaseinput the content!")
document.reply.cont.focus()
returnfalse
}
returntrue
}
<formname="reply" method="post" onsubmit="returnvalidateForm( )">
<input type="text"name="title" size="80" /><br />
<textarea name="cont"cols="80" rows="12"></textarea><br />
<input type="submit"value="提交" >
</form>
注意:
1.onsubmit属性内容一定要有return关键字,否则函数会直接执行,不会返回
2.validateForm一定要返回一个boolean类型的返回值
3.提交按钮要写成submit类型的
二、利用input类型为submit组件的onclick()函数
1.将上面form标签中的onsubmit="return validateForm()"属性,去掉。
2.为“提交”按钮添加onclick事件,如下:
<input type="submit" value="提交" onclick="return validateForm()">
三、利用button组件的onclick()函数,手动提交
<script type="text/javascript">
function modifyItem() {
if (trim(document.getElementById("itemName").value) == "") {
alert("物料名称不能为空!")
document.getElementById("itemName").focus()
return
}
with (document.getElementById("itemForm")) {
method = "post"
action = "item.do?command=modify&pageNo=${itemForm.pageNo}"
submit()
}
}
//返回
function goBack() {
window.self.location = "item.do?command=list&pageNo=${itemForm.pageNo}"
}
</script>
<form name="itemForm" id="itemForm">
<input name="itemNo" type="text" id="itemNo" value="${ item.itemNo }" >
<input name="itemName" type="text" id="itemName" value="${ item.itemName }" >
<input name="btnModify" type="button" id="btnModify" value=“修改" onclick="modifyItem()">
</form>
注意:
1.提交时,设置form的action和method属性,然后利用form.submit()函数提交。
submit绑定在form表单上添加指定的事件句柄以便该form被提交的时候执行定义的JavaScript 函数。只能用在表单form元素上。当你使用submit绑定的时候, Knockout会阻止form表单默认的submit动作。换句话说,浏览器会执行你定义的绑定函数而不会提交这个form表单到服务器上。可以很好地解释这个,使用submit绑定就是为了处理view model的自定义函数的,而不是再使用普通的HTML form表单。如果你要继续执行默认的HTML form表单 *** 作,你可以在你的submit句柄里返回true。
例子
隐藏代码
<form data-bind="submit: doSomething">
... form contents go here ...
<button type="submit">
Submit
</button>
</div>
<script type="text/javascript">
var viewModel = {
doSomething: function(formElement) { // ... now do something}}
</script>
这个例子里,KO将把整个form表单元素作为参数传递到你的submit绑定函数里。 你可以忽略不管,但是有些例子里是否有用,参考:ko.postJson工具。
为什么不在submit按钮上使用click绑定?
在form上,你可以使用click绑定代替submit绑定。不过submit可以handle其它的submit行为,比如在输入框里输入回车的时候可以提交表单。
参数
主参数
你绑定到submit事件上的函数
你可以声明任何JavaScript函数 – 不一定非要是view model里的函数。你可以声明任意对象上的任何函数,例如: submit: someObject.someFunction。
View model上的函数在用的时候有一点点特殊,就是不需要引用对象的,直接引用函数本身就行了,比如直接写submit: doSomething就可以了,而无需写成: submit: viewModel. doSomething(尽管是合法的)。
其它参数
无
备注:
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)