84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
使用js拼接一个连接a元素
a的href是一个js函数,它的第二个参数s是一个对象:
s = {'l_name':'name','l_author':'author'};
本意是点击拼接好的a标签,再执行这个getDate函数,在getDate里获取到s的属性l_name和l_author的值,但是传入的s参数变成了下面这样,导致getDate的参数有问题执行不了:
对js的语法不是很熟悉啊,请问怎样解决?
业精于勤,荒于嬉;行成于思,毁于随。
1)把对象s转成字符串var s = {'l_name':'name','l_author':'author'};function getData(pageIndex,sString){
var sObject=JSON.parse(sString); //.... console.log(sObject.l_name); //....
}
JSON.stringify(s);2)通过事件监听的方式3)var s = {'l_name':'name','l_author':'author'};function getData(pageIndex){
//.... console.log(s.l_name); //....
把 s 边上的 + 号 引号 去掉
另外 你把JavaScript前的引号 转义 是个啥回事儿还有 s 也是在页面上出现的js中的变量吧?
<script> var s={a:1} function geta(a,b){ console.log(a.a) } </script> <a href="javascript:geta(s)">a</a> //输出1
另外 建议使用 监听a的点击事件
HTML环境下不能够直接执行js代码,所以必须是把代码转化为字符串写到html里面才能执行。你这样链接以后,js会将这个对象转换为字符串,所以你在参数哪里看到的就是一个[object Object]。我建议你把object里面的基本属性都拿出来单独传,或者用click事件绑定,在html代码里面写js并不是一个非常好的解决方案。
1)把对象s转成字符串
var s = {'l_name':'name','l_author':'author'};
function getData(pageIndex,sString){
}
JSON.stringify(s);
2)通过事件监听的方式
3)
var s = {'l_name':'name','l_author':'author'};
function getData(pageIndex){
}
把 s 边上的 + 号 引号 去掉
另外 你把JavaScript前的引号 转义 是个啥回事儿
还有 s 也是在页面上出现的js中的变量吧?
另外 建议使用 监听a的点击事件
HTML环境下不能够直接执行js代码,所以必须是把代码转化为字符串写到html里面才能执行。你这样链接以后,js会将这个对象转换为字符串,所以你在参数哪里看到的就是一个[object Object]。我建议你把object里面的基本属性都拿出来单独传,或者用click事件绑定,在html代码里面写js并不是一个非常好的解决方案。