$(function(){
$('.buy').click(function (){
$.ajax({
type:'post',
url:'buyAction',
data:'book.id='+id,// 这里怎么能获取id呢? Action 里面有book 对象, 有set get 方法
dataType:'json',
success:function(data){

var check=data.check;

if(check==0){
$('#cartinfo').html('');
alert('XXX!');
}else{
$('#cartinfo').html('XXX!');
} }
}); });
});

解决方案 »

  1.   

    你的意思是 从action返回的book实体找到id吗?data:'book.id='+"${book.id}",//action返回的book 实体不是的话就是要从你当期的页面获取你选中的书id不过怎么看都是像个根据书id查询某本书、id应该是你来传递过去的、
      

  2.   


    遇到问题:独立的Js文件获得Struts2中Session中的值
    解决方案:在要调用该Session的jsp页面中
    <% int id = (Integer)request.getSession().getAttribute("id");%>
    <input type="hidden" id="id" name="id" value="<%=id%>"/>
    <script type="text/javascript">
        var id = document.getElementById("id").value;
        alert(id);
     </script>
    这样就得到了值记得给分啊
      

  3.   


    从一个action中取得 book 的id  到页面 然后 再获取 这个id 传到另一个action  现在问题是 获取不到id , 求解啊!
      

  4.   

    从一个action中取得 book 的id  到页面【是你上面写的jquery页面吗?】 然后 再获取 这个id 传到另一个action  现在问题是 获取不到id , 求解啊!请确保你在action中已经获取该book id了比如你action
    private int bookId=5;  //setter getter
    js可以拿var bookId = "${bookId}"; 拿到 
      

  5.   


    现在发现问题在哪儿了,! 就是第一个action后页面没有获取到值,然后 jquery 中的id 始终都是空;现在怎么从第一个action 中拿到 book的id;  ?? 帅哥,给个联系方式,帮我解决一下,
      

  6.   

    Quote: 引用 6 楼 IT0918liu 的回复:

    你按我说的那样试试能不能拿到值?[/quote 你说的那个可以, 但是我现在的情况,跟你说的不一样,
      

  7.   


    4楼写的方法没看?你action的实体是否有全局变量 并且生成setter、getter了?写块伪代码吧、
    struts.xml配置 /A.action并且他return SUCCESS返回到一个页面B.jsp
    A.action:
    private Book book ; //setter  getterpublic String execute(){    book  = new Book();
        book.setId(5);
        return SUCCESS;
    }
    B.jsp$(function(){
      var id = "${book.id}"; 
      alert(id);
    });
    访问  /A.action 执行execute方法跳到了 B.jsp 里了   就能弹出id值也可以使用2楼的方法   
    <%Book book = request.getAttribute("book");
      int bookId = 0;   if(book != null){
             bookId = book.getId();
        }
    %>
    js就直接获取到了   
    $(function(){
      var id = "<%=bookId%>"; 
      alert(id);
    });