首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在SuiteScript 2.0中设置来自客户端脚本的内联HTML域

在SuiteScript 2.0中设置来自客户端脚本的内联HTML域
EN

Stack Overflow用户
提问于 2017-08-29 15:50:51
回答 6查看 5K关注 0票数 5

我无法使用SuiteScript 2.0设置INLINEHTML类型的字段。但是,相同的字段也适用于SuiteScript 1.0。以下是代码片段:

代码语言:javascript
复制
/**
 * @NApiVersion 2.x
 * @NScriptType ClientScript
 */
// In SuiteScript 2.0   
define(['N/search'], function(search) {
    return {
        pageInit: function(context) {
            var currentRecord = context.currentRecord;
            // Set Value (This does not set any data)
            currentRecord.setValue({ fieldId: 'inline_html_field', value: '<div>Test Value</div>' });
            // Get value (Returns undefined)
            currentRecord.getValue({ fieldId: 'inline_html_field'});
        }
    }
});

// In SuiteScript 1.0
nlapiGetFieldValue('inline_html_field'); // Returns the data in field
EN

回答 6

Stack Overflow用户

发布于 2017-09-01 02:09:30

不幸的是,这是SS2.0中record.getValue()或currentRecord.getValue()背后实现的逻辑有缺陷的一个实例。在SS1.0中,nlapiGetFieldValue()通过的验证比SS2.0中对应的要少。这里有一个例子(希望经过足够的修改,NetSuite不会因为侵犯他们的IP而把我关进监狱)。这就是您请求该值时所发生的情况。

代码语言:javascript
复制
function getTheValue(options)
        {
            var fieldId;

            fieldId = '....';// Do a bunch of logic to validate the options parameter is correct

            return doGetTheValue(fieldId);
        }

        function doGetTheValue(fieldId)
        {
            var fieldObj = goodOlegetField(fieldId); // goodOle being our 1.0 api prefix....
            // the function call above returns null preventing your request from succeeding.
            var value;
            if (fieldObj == null)
                return undefined;


        }

我希望这是有意义的,虽然这不是一个答案,但它将提供洞察力,为什么你会得到你得到的回应。这也证明了你并没有疯。我经常发现,在使用SS2.0时,我需要这种保证。

票数 1
EN

Stack Overflow用户

发布于 2018-08-02 07:16:03

我也遇到过类似的问题,你需要使用Suitescript1.0来操作NetSuite中的内联html字段。但是,您可以使用以下代码,而不是将整个代码从suitescript 2.0转换到1.0:

window.nlapiSetFieldValue('YOUR_FIELDID', '<a>YOUR HTML CONTENT</a>');

通过放置窗口。你可以在Suitescript2.0中使用任何Suitescript1.0API!

票数 1
EN

Stack Overflow用户

发布于 2017-08-30 08:34:57

我认为您需要currentRecord模块。

代码语言:javascript
复制
/**
 * @NApiVersion 2.x
 * @NScriptType ClientScript
 */
// In SuiteScript 2.0   
define(['N/search', 'N/currentRecord'], function(search, currentRecord) {
    return {
        pageInit: function(context) {
            var currentRecord = context.currentRecord;
            // Set Value (This does not set any data)
            currentRecord.setValue({ fieldId: 'inline_html_field', value: '<div>Test Value</div>' });
            // Get value (Returns undefined)
            currentRecord.getValue({ fieldId: 'inline_html_field'});
        }
    }
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45933536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档