js如何回显

JavaScript09

js如何回显,第1张

你说的应该用ajax,异步javascript,其作用就是javascript直接与后台交互而无须刷新页面,即javascript和页面异步

如果刷新页面保留原数据,那么还不如用后台直接传回,何必用javascript

<form action="">

<input type="text" id="txtHint" />

<input type="button" value="保存" onclick="showHint(document.getElementById('txtHint').value)"/>

</form>

<script type="text/javascript">

function showHint(str)

{

var xmlhttp

if (str.length==0)

{

document.getElementById("txtHint").innerHTML=""

return

}

if (window.XMLHttpRequest)

{// code for IE7+, Firefox, Chrome, Opera, Safari

xmlhttp=new XMLHttpRequest()

}

else

{// code for IE6, IE5

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")

}

xmlhttp.onreadystatechange=function()

{

if (xmlhttp.readyState==4 &&xmlhttp.status==200)

{

document.getElementById("txtHint").innerHTML=xmlhttp.responseText

}

}

xmlhttp.open("GET","/ajax/gethint.asp?q="+str,true)//第二个参数要相对位置到后台服务器中你的数据保存程序(如本例为gethint.asp;q用于传递文本值)

xmlhttp.send()

}

</script>

//以上内容的意思就是:给保存按钮加了一个触发事件,而触发事件会调用js函数showHint(str),该函数执行过程中进而会调用其包含的新建浏览器内置类(引用给xmlhttp)的一些内置方法,可使在不打开或跳转页面的情况下将数据传递给服务器。当然对服务器后台程序(如.net)需要对应的组件。

你可以弄个新页将上面代码复制放到<body>后测试下

仅仅显示的话 可以转换成文本 alert() 就可以了

<script>

    var jsonObj = {

        "qq":"321321321",

        "MSN":"[email protected]",

        "Tel":"0852-8888888"

    }

    var jStr = "{ "

    for(var item in jsonObj){

        jStr += "'"+item+"':'"+jsonObj[item]+"',"

    }

    jStr += " }"

    alert(jStr)

</script>

点击"返回",把值放到request或者session中,setAttribute("name","value"),

然后在返回的页面中<input value="${name}"/>