2 qq 37823305 qq_37823305 于 2017.09.08 10:52 提问

js传参问题,foreach里面传参
 <ul class="app-header-box">
                        <c:forEach var="userType" items="${userInfo.haveTypeList}" varStatus="status">
                            <c:choose>
                                <c:when test="${status.index==0}">
                                    <li class="app-header-color">
                                        1系统-${userType.SYS_NAME}
                                    </li>
                                </c:when>
                                <c:otherwise>
                                    <li class="app-header-color hidden" onclick="toLogin('${userType.USER_NAME}','${userType.SYS_TYPE}');">
                                        2系统-${userType.SYS_NAME}
                                    </li>
                                </c:otherwise>
                            </c:choose>
                        </c:forEach>
                         <span class="mui-icon mui-icon mui-icon-arrowdown"></span>             
                    </ul>

如何在onclick="toLogin()这个方法里面传参的时候把:1可视化系统-${userType.SYS_NAME}这个传进去

7个回答

qq_33727653
qq_33727653   2017.09.08 11:36
已采纳

为啥传呢?既然明确知道应该取那个地方的值,在toLogin方法体里直接取第一个li里面的值不就行了?
而且楼主是明确知道${userInfo.haveTypeList}里面必然是两个吗? 如果必然是两个,又何必用循环能${userInfo.haveTypeList[0]}、${userInfo.haveTypeList[1]}不就行了?这样即使传值也好传!!!

showbo
showbo   Ds   Rxr 2017.09.08 11:19
 <li class="app-header-color hidden" onclick="toLogin('${userType.USER_NAME}','${userType.SYS_TYPE}','${userType.SYS_NAME}');">

toLogin注意要在原来基础上增加SYS_NAME参数来接受,否则用arguments[2]来获取

qq_40022312
qq_40022312   2017.09.08 11:36

方法中传参我也试过,${userType.SYS_NAME},如果你在(${userType.SYS_NAME},${userType.SYS_TYPE})中想传递多个参数会报错,在toLogin(')"函数中一般传的参数是userType的唯一标识

sunny_desmond
sunny_desmond   2017.09.08 13:45

可以的,很强势~~~

JSXHMQS
JSXHMQS   2017.09.08 11:02

onclick="toLogin('${userType.SYS_NAME}')"

qq_37823305
qq_37823305 是在第二个li里面的点击事件,传入第一个li里面的SYS_NAME
2 个月之前 回复
zhiqiang9267
zhiqiang9267   2017.09.08 11:03

onclick="toLogin('${userType.SYS_NAME}')"

qq_36592414
qq_36592414 用引号引住就不对啦,不能引,直接作为参数
2 个月之前 回复
qq_37823305
qq_37823305 是在第二个li里面的点击事件,传入第一个li里面的SYS_NAME
2 个月之前 回复
liufei168_
liufei168_   2017.09.08 11:18

同意楼上的回答,直接把${userType.SYS_NAME}作为参数传进去就OK

Csdn user default icon
上传中...
上传图片
插入图片