2010-10-05 30 views
0

我试图访问我创建的getJson数组添加图像引用选项列表标记。我试图征税,以便用户也可以点击链接转到下一页。 我相当肯定语法是错的,因为我不太习惯jQuery,有人可以帮我吗?访问getJson的图像锚点

$(function(){ 
    $("select#chapters").ready(function(){ 
$.getJSON('/pageCall.php',{chapters:$('#chapters').val()}, function(data) { 
    var select = $('#page1'); 
    var select = $('#page2'); 
    var options = ''; 

    var pageNumber = 1; 
    var nextPage = 0; 
    var prevPage = 0; 
    var totalPages = data.length; 

    var doNext = function(){ 
      if(pageNumber > totalPages) 
      { 
       pageNumber = totalPages; 
      } 
      nextPage = pageNumber + 1; 
      $('#mangaImage').attr('src', data[nextPage].('imageLocation')); 
     }; 

    $('.nextPage').unbind().click(function(){ 
     doNext(); 
     }) 

    $.each(data, function(index, array) { 
      options += '<option value="' + array['imageLocation'] + '" >' + array['pageNumber'] + '</option>'; 

     }); 
     $("select#page1").html(options); 
     $("select#page2").html(options); 
    }); 
    }) 
}) 

回答

0

这很难说是肯定的,但它看起来像你的问题可能是这一行:

$('#mangaImage').attr('src', data[nextPage].('imageLocation')); 

基于你有什么后,它看起来像该行应该改为是这样的:

$('#mangaImage').attr('src', data[nextPage]['imageLocation']); 

您还声明变量select两次,但从来没有使用它:

var select = $('#page1'); 
var select = $('#page2'); 

而这只是挑剔,但您并不需要将doNext定义为变量,您可以将相同的匿名函数传递给click事件。在最坏的情况,点击事件绑定,可以清理,像这样:

$('.nextPage').unbind().click(doNext); 

最后,你错过了在点击事件绑定的最后一个分号。