Параметр modelandview var с использованием ajax.updater - PullRequest
0 голосов
/ 21 апреля 2011

На странице JSP вы получаете с помощью JSTL переменную ModelAndView в "$ {model}

На этой странице я использую JAVASCRIPT для обновления DIV с помощью ajax.updater, код здесь:


document.getElementById("idFa").value=image.title;
var frm2="${model}";
var dataString = 'mail=acevallo@hotmail.com&idFar=' + image.title + "&frm2=${model.farmers}";
new Ajax.Updater( "pcBody_content2", "tabProductsFruitC2.jsp", { method: "get",parameters:dataString,evalScripts: true });

моя проблема в том, что когда я обновляю DIV с новой вкладкой страницыProductsFruitC2.jsp. На этой новой странице у меня нет переменной $ {model}, поэтому я посылаю ее по параметру this var.

Я пытался сделать это с помощью var frm2, но он преобразовал мою переменную в строку, и я не могу использовать свою переменную modelandview Как я могу отправить параметром мою модель var $ {model}.

спасибо, ребята

1 Ответ

1 голос
/ 28 апреля 2011

Наконец-то я нашел одно решение этой проблемы ....

У меня было это с использованием JSTL в JavaScript, получить мои данные в одном массиве и отправить по параметру, используя LOAD из jquery, так:

enter code here
function productsLoad(image){
    var contactTypesList = new Array();
    var tmpArray = new Array();
    var newOption,newOption2;
    var i=1;
    <c:forEach items="${model.farmers2}"  var="contactType">                    
      newOption = '${contactType.farmerId}';
      contactTypesList.push(newOption); 

      if ((newOption==image.title)&&(i==1)){
        <c:forEach  items="${contactType.products}" var="prd">
            newOption2 = '${prd.key}';
            tmpArray.push(newOption2);                                      
        </c:forEach>        
        i=i+1;
      } 
    </c:forEach>

    var dataString = 1;    
    $j("#pcBody_content2").load("jsp2/tabProductsFruitC2.jsp",{ 'choices[]': tmpArray } );
  }

</script>
...