ajax传多个值到div怎么传?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax传多个值到div怎么传?相关的知识,希望对你有一定的参考价值。

我有个php采集页面,ajax传值给php,得到一系列数据,我想把数据分开显示,即显示在多个<div>中,有人说给ajax的函数加参数,如xmlhttp.onreadystatechange = function () StateChange(xmlhttp, a); ;
但我不知道怎么传??
比如,我有
<div id="a"></div>
<div id="b"></div>
<div id="c"></div>

我怎么处理才能把相应的值通过ajax更新这3个标签的数据呢??
期待大侠指点~~~~

这个方法很多..
比如.你在PHP页面处理的时候...你不是有3个DIV么...那么你3个DIV的结果.用一个分割符隔开...然后传回来的时候的..xhr.responseText.split('|'); 比如这样不就行了么...然后分别写到这3个DIV里面去

还有一种很简单的方法..你可以将3个DIV的生成放在PHP页面里面.比如:
<?php

echo "<div id='a'>处理的数据</div>";
echo "<div id='b'>处理的数据</div>";
echo "<div id='c'>处理的数据</div>";
?>

然后返回值的时候..先移处掉原先的值
var p=document.getElementById('a').parentNode;
p.remove(document.getElementById('a'));
p.remove(document.getElementById('b'));
p.remove(document.getElementById('c'));
p.innerhtml=xhr.responseText;

第2种方法相对烦对.但是也很简单...第一种还不错...有的时候我也会用..
参考技术A 比如你拿到值
responseText = "1,2,3";
进过神奇的变化,aStr = 1;bStr = 2;cStr = 3;
document.getElementById("a").innerHTML = aStr;为a赋值。
参考技术B 这个方法很多..
比如.你在PHP页面处理的时候...你不是有3个DIV么...那么你3个DIV的结果.用一个分割符隔开...然后传回来的时候的..xhr.responseText.split('|');
比如这样不就行了么...然后分别写到这3个DIV里面去
还有一种很简单的方法..你可以将3个DIV的生成放在PHP页面里面.比如:
?php
echo
"<div
id='a'
处理的数据

MVC中使用Ajax提交数据 Jquery Ajax方法传值到action

Jquery Ajax方法传值到action

<script type="text/javascript">
        $(document).ready(function(){
            $("#btn").click(function(){
             $.ajax({
                type: \'POST\',
                url: "/Home/MyAjax",
                data: {
                    val1: $("#txt1").val(),
                    val2: $("#txt2").val(),
                    val3: $("#txt3").val(),
                    val4: $("#txt4").val(),
                },
                dataType: "json"
            });
            });
        });  
</script>
<input id="btn" type="button" value="click" />
<input id="txt1" type="text" value="" />
<input id="txt2" type="text" value="" />
<input id="txt3" type="text" value="" />
<input id="txt4" type="text" value="" />
data是json数据。传递到的Action是/Home/MyAjax。那么在Action方法处接收的方式如下:
public ActionResult MyAjax(string val1)
        {
            string val2 = Request["val2"].ToString();
            string val3 = Request.Form["val3"].ToString();
            string val4 = Request.Params["val4"].ToString();
            return Content("ViewUserControl1");
        }
或者接收参数为FormCollection,也有同样的效果。

 

public ActionResult MyAjax(FormCollection f)
        {
            string val2 = f["val2"].ToString();
            string val3 = f["val3"].ToString();
            string val4 = f["val4"].ToString();
            return Content("ViewUserControl1");
        }

  

MVC3的强悍之处,是它是基于变量参数命名匹配的机制,就是说它尽可能的查找能够有相同变量名字的值。

对于上面的例子,我们甚至可以构造出一个class,如下:
public class aclass {
    public string val1 { set; get; }
    public string val2 { set; get; }
    public string val3 { set; get; }
    public string val4 { set; get; }
}
那么就可以设置参数类型为aclass
public ActionResult MyAjax(aclass f)
        {
          return Content(f.val1+f.val2+f.val3+f.val4);
        }
注意,aclass类的属性名就是json的key的名字,只要符合一致,它就能匹配,不得不说强悍。

 转帖:http://www.cnblogs.com/dupeng0811/archive/2012/06/15/2551077.html

 

以上是关于ajax传多个值到div怎么传?的主要内容,如果未能解决你的问题,请参考以下文章

springMVC传多个对象值到前台

从onclick到function到ajax的url问号传多个参数(更多的话以此类推)问题

Taro 中父组件传多个值到子组件, 不同页面传值, 子组件修改父组件值

MVC中使用Ajax提交数据 Jquery Ajax方法传值到action

ajax传数组怎么传

怎么把js中通过url同时传多个参数怎么写