Netsuite:如何在发布呼叫时插入iframe

时间:2014-02-08 10:45:15

标签: netsuite

我写了一个kitlet,它有两个部分--GET和POST。  在GET方法中,我有一个下拉列表和一个提交按钮。  在POST方法中,我有5个文本字段,它们根据从GET下拉列表中获取的值显示数据。

我想在提交按钮点击时调用iframe。 iframe将显示POST方法逻辑。简而言之,我不想在提交时导航到新页面,而是让整个页面在单页上工作。

我的代码

function init(request, response)
{
    if(request.getMethod() == 'GET')
    {
                //... some code for dropdown and submit

               //code for iframe
               var context = nlapiGetContext();

               var url = 'https://**url-of-post-method-results**.com';
           var title = context.getSetting('SCRIPT', 'custscript_suitelet_title')
               var content = '<iframe width=960px height=100% style="height:640px;" src=' + url + '></iframe>'

        var newField = form.addField ('content', 'inlinehtml', title);
        form.addField('extra', 'inlinehtml', '')
        form.setTitle (title);
        newField.setLayoutType('outsidebelow');
        newField.setDefaultValue (content);
        form.addSubmitButton('Submit');
        response.writePage(form);
}

}

我提到Marty Zigman's tutorial on embedding iframe。但是我'。混淆了在GET或POST中嵌入iframe的位置?

1 个答案:

答案 0 :(得分:1)

据我所知,NetSuite没有内置的API,以避免在这种情况下刷新页面。单击提交按钮,默认情况下,将通过post方法同步提交表单。您需要使用客户端代码通过NetSuite默认表单提交按钮上的jQuery中断click()事件方法。然后,您将使用jQuery自己发送帖子,并在响应中,通过更新iframe src url再次通过jQuery显示您想要的信息。

我道歉我目前无法访问帐户以便能够为您提供相应的JavaScript。我会谨慎破坏,因为你需要进入NetSuite UI才能使其工作。