NetSuite SuiteScript 2.0:内联 HTML document.querySelector() 结果

NetSuite SuiteScript 2.0 : Inline HTML document.querySelector() Result

我有一个 SuiteScript 2.0 内联 HTML 字段,它的默认值是通过成功获取网页并抓取所需数据(即 hack)的脚本注入的:

@NScriptType UserEventScript

var field = scriptContext.form.addField({
            id: 'custpageinjectcode',
            type: 'INLINEHTML',
            label: 'Inject Code'
});
field.defaultValue = "<script> ...var desiredText = document.querySelector(...).innerText; alert(desiredText);'jQuery(function($){ require(['/SuiteScripts/clientSuiteScript.js'], function(mod){ mod.pageInit();});});'</script>"

我还有一个带监听器的 clientScript:

@NScriptType ClientScript

function (currentRecord) {

        function pageInit() {
            window.addEventListener("message", browser_ReceiveMessage, false);
            console.log('Added Listener...');

        }

        return {
            pageInit: pageInit
        }


        function browser_ReceiveMessage(event) {

            var curRec = currentRecord.get();
            console.log('Current Record ID', curRec.id)
        }//end function

    }//end main function

);//end script

考虑到字段值只是一个传递给浏览器进行处理的字符串?

感谢您的时间和考虑。

您可以使用 postMessage 到 post 来自 inlineHTML 字段的数据到消息侦听器,这将在您的 客户端脚本中 并且此侦听器将更新所述字段数据。