javascript中请问action链接什么意思?

JavaScript021

javascript中请问action链接什么意思?,第1张

html可以通过location.search来获得表单传递的参数。比如说表单是这样的:

<form action="1.html">

<input name="test" type="text" value="abc"/>

<input type="submit" value="提交"/>

</form>

则1.html可以用下面的js代码来接收数据:

<script>

var request = {}

location.search.slice(1).split("&").forEach(function(e){

var s=e.split("=")

request[s[0]]=s[1]

})

</script>

这样的话 request.test 的值就是 "abc"

jsp中获取action传递过来的数据

代码如下:

Map request = (Map) ActionContext.getContext().get("request")

既然你知道request是一个已存在的对象,在定义对象时就不要再用request这个名字,容易给他人以及自己以后造成误解

用struts2标签可以这么做

<s:iterator value="request">

<s:property value="empId" />

<s:property value="eName" />

<s:property value="eSex" />

<s:property value="eSex" />

<s:property value="eSalary" />

</s:iterator>

通过form 表单和隐藏域传值

<script>

var fjmc=window.parent.document.all.fjmctext.value

document.getElementByIdx_x_x_x("aaa").value = fjmc

myForm.action="collectionSendToExcel.action"

myForm.submit()

</scritp>

<form action="#" id="myFormToExcel" name="myFormToExcel">

<input type="hidden" name="fjmc" id="aaa" />

<input type="text" name="action" />

<input type="submit" value="提交'>

</form>

通过Ajax传递:

function commit(){

var myMask = new Ext.LoadMask(Ext.getBody(), {msg: '正在提交数据,请稍后...'})

myMask.show()

Ext.Ajax.request({

form: 'myForm',

method: 'post',

success: function(response, option){

myMask.hide()

var results = Ext.util.JSON.decode(response.responseText)

var msgs = '【承兑保证操作成功!】'

switch(results.type){

case '1':

msgs = '【保证人账号不能为空,操作失败】'

break

case '2':

msgs = '【访问数据库发生异常,操作失败】'

break

}

Ext.Msg.show({

title:'信息提示',

modal:false,

msg: msgs,

buttons: Ext.Msg.OK,

fn:function(btn,text){

if(btn == 'ok'){

if(results.success){

comBack(g('SBillType').value)//返回列表

}

}

},

animEl: 'elId',

icon: Ext.MessageBox.INFO

})

},

failure: function(response,option){

myMask.hide()

Ext.MessageBox.alert("信息提示","【提交数据超时,请稍候再试...】")

}

})

}

还有就通过jquery 的ajax

var fjmc=window.parent.document.all.fjmctext.value

Ext.Ajax.request({

url : 'messageReport.action?' + param ,

method : 'post' ,

success : function(response){

var result = Ext.util.JSON.decode(response.responseText)

if(result.flag == 'success'){

Ext.Msg.alert('系统提示',result.msg,function(){

Ext.getCmp('requisitionGridId').getStore().reload()

})

}else{

Ext.MessageBox.alert('系统提示',result.msg,function(){

Ext.getCmp('requisitionGridId').getStore().reload()

})

}

}

})

})

-----------------------------------------------------------------------------------------

第四种方式:

<script type="text/javascript">

function collectionSendToExcel(){

var billNo=document . getElementById('billNo').value

var SOrgCode=document.getElementByIdx_x("SOrgCode").value

var account=document . getElementById('account').value

var SCustBankCode=document . getElementById('SCustBankCode').value

var operType=document . getElementById('operType').value

location.href="collectionSendToExcel.action?querybean.billNo=" + billNo+"&customer.SOrgCode"+SOrgCode+"&account.SAccountNo"+account+"&account.SCustBankCode"+SCustBankCode

}

</script>