JS中,图片连接如何提交Form表单

JavaScript015

JS中,图片连接如何提交Form表单,第1张

相关的还有‘_top’、‘_parent’、'_self'当然写好这些还不够,要在js里面写好表单提交的代码:

<script language="javascript" >var idfunction examineatt(id){

alert("您确定进行投票?")

var sf =document.suveryForm

sf.submit()

// window.open('<%=request.getContextPath()%>/suveryAction.do?action=submitChoice','_blank')

}</script>在链接图片的地方可以写上:<a href="javascript:examineatt('<bean:write name="suvery" property="id" />')">表示调用js方法。其中:'<bean:write name="suvery" property="id" />'代表的是传入的参数(动态),如果你不需要这个参数,那就写成:<a href="javascript:examineatt()">当然年的js里面的方法同样不能有参数。视具体情况而定。二、关于迭代时应该注意的事项: 1,迭代时,迭代的内容不能为空,否则有可能会影响到样式表的显示。 2,嵌套迭代时应该注意迭代的数据结构,分层迭代。三、inputbox中的value可以动态的传入。这时候的效果miltibox非常相似。 例如:定义一个变量,该变量存放的是迭代数组里面的choice_id,可以用下面的代码完成: <bean:define id="checkflag" ><bean:write name="elementValue"property="choice_id" /></bean:define ><input type="checkbox" name="choiceCheck"

value="<%=checkflag%>">四。

图片提交form:

然后js有验证为:

//报名验证

function checksub(form){

if(条件){ //判断是否登录

showModeWindow()//弹出登录框

return false

}

if(条件){ //登录是否输入姓名

alert("请填写真实姓名!")

$("#realname").focus()

return false

}

return ture

}

就这样,就是登录必须登录,并且输入了姓名后,才能提交表单。项目正常用了一段时间,没任何问题,可是有一天,客户突然问题,为什么报名表中有一

条数据没有用户姓名,我就觉得奇怪,就又返回测,怎么测,都会正常提交先登录,或是输入姓名。我百思不得其解。

所以,我都视这个问题为一灵异现象,直至今天,我的网速不好,我再次瞎点,真还发现我自己都提交了一报名信息。再试,再发一个问题,就是页面刚刚加载出提

交按键时,我就点击那个提交按钮,这时,js会发生一个错误,但瞬间就没了,因为页面已经转到报名结果页面。呵,这家伙,这我才明白,原来,网速不好,页

面加载慢,在页面刚加载到提交按钮时,我就点击提交,js验证到用户并未登录,所以执行

showModeWindow(),可是此时,这个弹出框相关的东

西还没有加载完毕,就会找不着相应对象,故产生js异常。而可罪恶的submit类型提交按钮,会忽略掉js异常,直接提交表彰。以后出理所谓的“灵异现

象”。

于是,当即改之如下:

js改为:

function checksub(){

if(条件){ //判断是否登录

showModeWindow()//弹出登录框

return

}

if(条件){ //登录是否输入姓名

alert("请填写真实姓名!")

$("#realname").focus()

return

}

$("#campaignFrom").submit()//提交表单。

}

上传图片我首先想到的是利用这个插件,webupload LUploade这类插件大多支持图片预览,断点/分片上传,功能比较丰富,但是由于后台原因我需要利用form表单进行上传图片,所以就整理了一下关于图片上传的几种方式: 1.form表单上传图片 表单上传遇到了一下几个问题: (1)进行表单提交时,无法获取返回值 (2)表单提交会进行页面刷新 为了解决这个问题,我想到了利用iframe进行解决,在form元素上直接添加target属性,使提交跳转页面直接跳转到iframe中,阻止页面进行跳转,返回结果也会呈现在 iframe框架之中,我们可以去除iframe中的返回值,前提是必须在同一个域名下。这样我们获取返回值就会拥有局限性。还好我反降了另外一种方法,jquery中jqueryj.form.js表单提交插件。我们可以直接这样来获取表单返回值。 form表单提交注意事项: (1).提供form表单,method必须是post。 (2).form表单的enctype必须是multipart/form-data。 javascript学习交流群:4538335s's's's'sssssssssssssss54 enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。默认地,表单数据会编码为 "application/x-www-form-urlencoded"。就是说,在发送到服务器之前,所有字符都会进行编码。HTML表单如何打包数据文件是由enctype这个属性决定的。enctype有以下几种取值: application/x-www-form-urlencoded:在发送前编码所有字符(默认)(空格被编码为’+’,特殊字符被编码为ASCII十六进制字符)。 multipart/form-data:不对字符编码。在使用包含文件上传控件的表单时,必须使用该值。 text/plain:空格转换为 “+” 加号,但不对特殊字符编码。 默认enctype=application/x-www-form-urlencoded,所以表单的内容会按URL规则编码,然后根据表单的提交方法: method=’get’ 编码后的表单内容附加在请求连接后, method=’post’ 编码后的表单内容作为post请求的正文内容。 (3).提供input type="file"上传输入域。 2.ajax无刷新上传  ajax和FormData可实现页面无刷新的文件上传效果,主要用到了jQuery的ajax()方法和XMLHttpRequest Level 2的 FormData接口。通过FormData对象可以更灵活方便的发送表单数据,因为可以独立于表单使用。如果你把表单的编码类型设置为multipart/form-data ,则通过FormData传输的数据格式和表单通过submit()方法传输的数据格式相同。 ajax无刷新上传 Ajax无刷新上传的方式,本质上与表单上传无异,只是把表单里的内容提出来采用ajax提交,并且由前端决定请求结果回传后的展示结果。 3.各类插件的使用: webupload LUPloader