后台返回的是json字符串,在js里还需要转成json对象才能用
//json字符串
var strJson = '<%=uslist %>';
//转json对象,用eval,当然也可以用json包里的方法或者类库提供的方法(比如jquery)
var objJson = eval('(' + strJson + ')');
可以用js提供的for循环来获得。
假设js对象为obj;
for(var i in obj){
documentwrite(i+":"+obj[i]);
}
原文链接: 动态获取js对象的元素
在开发后台 *** 作系统的时候,遇到表单清空,我用vant插件开发,该组件没有清空函数,需要自己写。嘶~,麻烦了,每个页面都有需要清空,而字段又不一样,每个页面写一个清空函数那不得累死。有没有好办法呢?有!
好了,知道[]的符号能获取对象元素值和循环获取对象,那写一个公共函数不就简单了?
我们访问一个jsp页面时,运行简单示意图如下
先执行jsp程序 --- 》再执行HTML 和 JavaScript
我看一下程序
<%
outprint("<div name=\"divPro\">");
outprint("</div>");
outprint("<div name=\"divPro\">");
outprint("</div>");
outprint("<div name=\"divPro\">");
outprint("</div>");
outprint("<div name=\"divPro\">");
outprint("</div>");
%>
这一段执行之后 页面中多了 4行代码
<div name="divPro"></div>
<div name="divPro"></div>
<div name="divPro"></div>
<div name="divPro"></div>
<script type="text/javascript">
function show(){
var names = documentgetElementsByName("divPro");
alert(names);//显示object说明确实取得对象了
alert(nameslength);//这里却显示0说明names数组中没有元素
}
</script>
这个时候 那就相当于 html+JavaScript 的交互了
这个不难了吧
<div id="mydiv">
<span>abc</span>
</div>
<div id="mydiv2">
<span><a>abc</a></span>
</div>
<TABLE>
<TR>
<TD>aaa</TD>
<TD>bbb</TD>
</TR>
<TR>
<TD>ccc</TD>
<TD>ddd</TD>
</TR>
</TABLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
// 通过id获取div元素
var div = documentgetElementById("mydiv");
// 获取div下的span元素
var span = divfirstChild;
// 获取span元素中的文本
var text = spaninnerText;
//alert(text);
// 获取div下的html
var html = divinnerHTML;
//alert(html);
// 处理div2
// 获取mydiv2>span>a>下的文本
var div2 = documentgetElementById("mydiv2");
// 得到mydvi2>span>a元素
var a = div2firstChildfirstChild;
text = ainnerText;
//alert(text);
// 处理表格
// 通过标签名获取table元素
var table = documentgetElementsByTagName("table")[0];
// 下面获取bbb
// firstChild:就是第一个子元素,tablefirstChildfirstChildfirstChild就是第一个TR下的第一个TD。
// nextSibling:就是下一个兄弟节点,兄弟节点就是处在同一级上的节点,比如aaa,bbb这2个所在的节点是同一级,所以他们是兄弟节点。
// tablefirstChildfirstChildfirstChild:得到第一个TR下的第一个TD。
// tablefirstChildfirstChildfirstChildnextSibling:就是第一个TR下的第一个TD的兄弟节点,就是bbb所在的标签。
// 然后用innerText取出元素的文本值。要取出子标签的html,则用innerHTML
// 如果得到了第一个TR下的第2个TD,怎么得到第一个TD呢?可以用previousSibling(上一个兄弟节点)
// 如果得到了第一个TR下的第2个TD,怎么得到它的父元素TR呢?用parent(父节点)
// ps:当然,这个你可以用tablerows[0]cells[1]来获取bbb的内容。这个是针对table的。
// 但是上面的针对所有的dom元素都有效。
text = tablefirstChildfirstChildfirstChildnextSiblinginnerText;
//alert(text);
alert(text);
//-->
</SCRIPT>
以上就是关于js中怎么获取jsp里的对象全部的内容,包括:js中怎么获取jsp里的对象、js 怎么查看对象、动态获取js对象的元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)