asp页面form提交的问题

页面中有如下代码,主要是一个timer,设置了提交表单的按钮,60秒的限制,我想直接在地址栏提交radio组件的“优秀”选项,请我我该怎么写这个提交语句?<tablewi... 页面中有如下代码,主要是一个timer,设置了提交表单的按钮,60秒的限制,我想直接在地址栏提交 radio 组件的“优秀”选项,请我我该怎么写这个提交语句?

<table width="100%" border="0" cellspacing="0" class="border">
<form action="tp.asp" method="post" name="form1" target="_self" id="form1">
<tr>
<td> <div align="center">
<input type="radio" name="s" value="good">优秀
<input type="radio" name="s" value="better">良好
<input type="radio" name="s" value="norrow">一般
<input name="english" type="hidden" id="english" value="yce">
<input name="id" type="hidden" id="id" value="225">
<script language="javascript">
var Timer = 60;
window.setInterval("DoTimer()",1000);

function DoTimer()
{
Timer --;
if(Timer == 0)
{
form1.btnNext.disabled = false;
}
}

</script>
<input name="btnNext" type="submit" id="btnNext" value="投票" disabled>
</div></td></tr></form>
<tr>
<td height="29">
<div align="center"><font color="#FF0000">请看完后再投票</font></div></td></tr></table>

请问地址栏输入什么可以直接提交我的投票?
我输入http://XXX.XXX.XXX/tp.asp?id=001&s=good
这样写为什么不能提交我的投票呢?请高手教我该怎么写?谢谢!
展开
 我来答
tym1193
推荐于2016-10-13 · TA获得超过234个赞
知道小有建树答主
回答量:152
采纳率:0%
帮助的人:253万
展开全部
请注意看form中的method是post 如果想要使用地址传递方法 需要使用method="get" 以及在asp端使用Request("s")和Request("id")或Request.queryString("xx")

注意:asp可以用Request("s")这样取到 不过取post数据会有些慢 建议使用Request.QueryString()和Request.Form()

你把下面的脚本放在html的head里,可以实现功能了:
<script language="javascript">
var Timer=3,defaultVal="good";
setTimeout("enableSubmit(true)",Timer*1000);
function enableSubmit(){
var _submit = arguments[0]||false;
document.forms[0].btnNext.disabled = false;
if(_submit){
if(!chkVal("s")){//未选择
var _radios = getChk("s");
for(var _i = 0;_i<_radios.length;_i++){
if(_radios[_i].value==defaultVal){//选择默认值
_radios[_i].checked="checked";
break;
}
}
}
//超时自动提交
document.forms[0].submit();
}
}
function bindChk(_name){
var _radios = getChk(_name);
for(var _i = 0;_i<_radios.length;_i++){
_radios[_i].onclick=enableSubmit;
}
}
function chkVal(_name){
var _radios = getChk(_name);
for(var _i = 0;_i<_radios.length;_i++){
if(_radios[_i].checked==true||_radios[_i].checked=="checked"){
return true;
}
}
return false;
}
function getChk(_name){
var _doc = arguments[1]||document;
var _radios = _doc.getElementsByTagName&&_doc.getElementsByTagName("INPUT"),_result=[];
for(var _i = 0;_i<_radios.length;_i++){
if(_radios[_i].name!=_name){continue;}
_result.push(_radios[_i]);
}
return _result;
}
window.onload="bindChk('s')";
</script>
希望对你有所帮助!当然了,自己动手比较好。
ps.鄙视抄袭答案的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
67918334
2009-10-12 · TA获得超过726个赞
知道小有建树答主
回答量:839
采纳率:0%
帮助的人:598万
展开全部
你这么写没错。问题应该是在接收那里

请注意看form中的method是post 如果想要使用地址传递方法 需要使用method="get" 以及在asp端使用Request("s")和Request("id")或Request.queryString("xx")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式