Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Grails在弹出窗口后呈现gsp页面_Javascript_Grails_Twitter Bootstrap_Render_Popupwindow - Fatal编程技术网

Javascript Grails在弹出窗口后呈现gsp页面

Javascript Grails在弹出窗口后呈现gsp页面,javascript,grails,twitter-bootstrap,render,popupwindow,Javascript,Grails,Twitter Bootstrap,Render,Popupwindow,我有一个使用twitter引导的弹出窗口,然后我有一个调用控制器操作的javascript。在该控制器操作上,我呈现一个字符串以显示在弹出窗口中。在这个动作中,我有另一个呈现,它呈现gsp页面本身,因为在textarea中添加了一个值。如何使第二次渲染工作 普惠制: 函数callEgCreate(){ $.ajax({ 键入:“获取”, url:“${createLink(控制器:'MGExecutingGroup',操作:'addEG_Create')}”, 数据:{ “inputFiel

我有一个使用twitter引导的弹出窗口,然后我有一个调用控制器操作的javascript。在该控制器操作上,我呈现一个字符串以显示在弹出窗口中。在这个动作中,我有另一个呈现,它呈现gsp页面本身,因为在textarea中添加了一个值。如何使第二次渲染工作

普惠制:


函数callEgCreate(){
$.ajax({
键入:“获取”,
url:“${createLink(控制器:'MGExecutingGroup',操作:'addEG_Create')}”,
数据:{
“inputField=“+$(“[name='inputField']”)val()
“listField=“+$(“[name='listField']”)val()
}
}).成功(功能(数据){
$('.modal body').html(数据);
$('myModal').modal('show');
});
}
×
成员
${params.Result}
控制器:

def addEG_Create={
def LdapName
def结果
def membersString=“”
def成员=“”
结果=proxy.getWLSGroupParticipants(params.inputField)
如果(结果!=null){
params.egId=params.id
LdapName=proxy.getWLSGroupsForUser(结果[0])
整数索引
如果(LdapName.size()>1){
索引=0
//查找正确Ldap名称的索引号
对于(int i=0;i
杰卡,你不能这样渲染两个想法

render(members)
render(view:'create')
我认为你能做到这一点的更好方式是:

function callEgCreate(){
      $.ajax({
      type: "GET",
      url: "${createLink(controller: 'MGExecutingGroup', action: 'addEG_Create')}",
      data: {
                "inputField="+$("[name='inputField']").val()
                "listField="+$("[name='listField']").val()
      },
      dataType: 'json',   
      success(function(data) {
            window.open(data['openWin']);
            $('.modal-body').html(data['members']);
            $('#myModal').modal('show');
        });
    }
在控制器中,您可以将数据呈现为JSON:

def addEG_Create () {
    ...
    ...
    render([members:members, openWin:'create'] as JSON)
}
在你的普惠制中,你应该这样做:

function callEgCreate(){
      $.ajax({
      type: "GET",
      url: "${createLink(controller: 'MGExecutingGroup', action: 'addEG_Create')}",
      data: {
                "inputField="+$("[name='inputField']").val()
                "listField="+$("[name='listField']").val()
      },
      dataType: 'json',   
      success(function(data) {
            window.open(data['openWin']);
            $('.modal-body').html(data['members']);
            $('#myModal').modal('show');
        });
    }
我没有测试过这段代码,可能会有一些错误,但逻辑是这样的

已更新

function callEgCreate() {
    $.ajax({
        type: "GET",
        url: "testeChamada",
        data: {"inputField": $("[name='inputField']").val(), "listField" : $("[name='listField']").val()},

        dataType: 'json',
        success: function (data) {
            window.open(data['openWin']);
            $('.modal-body').html(data['members']);
            console.log(data['members']);
        }
    });
}
Ps1:在您的控制器中,当您说render
render([members:members,openWin:'create']as JSON)
时,您必须使用map
[key:value]键接收页面中的数据。


Ps2:在您的
数据中:
您犯了一个错误。它应该是一个带有Key:Value的地图

你能提供你的行动代码吗?这样我就可以可视化你所需要的场景了。@Abdullah添加了我的代码。@user1690588还没有尝试过任何东西。不知道使用什么方法。您希望渲染同时工作,还是希望在一种情况下可以工作一个渲染,而在另一种情况下可以工作另一个渲染。您能解释一下您到底需要什么,因为我认为两个渲染不可能同时进行,因为您有一个屏幕而不是多个。membersString窗台不显示在listField文本区域。它仍然不起作用。弹出窗口甚至没有出现。请help@Jeka将我的邮件添加到gmail.com上的g talk lmeurer。让我们试着解决这个问题,然后把答案贴在这里
function callEgCreate() {
    $.ajax({
        type: "GET",
        url: "testeChamada",
        data: {"inputField": $("[name='inputField']").val(), "listField" : $("[name='listField']").val()},

        dataType: 'json',
        success: function (data) {
            window.open(data['openWin']);
            $('.modal-body').html(data['members']);
            console.log(data['members']);
        }
    });
}