Você pode usar as APIs Form Bridge para abrir um canal de comunicação entre formulários HTML5 baseados em XFA e seus aplicativos. As APIs Form Bridge fornecem uma API connect para criar a conexão.
A API connect aceita um manipulador como argumento. Depois que uma conexão bem-sucedida é criada entre o formulário HTML5 baseado em XFA e o Form Bridge, o identificador é chamado.
Você pode usar o código de amostra a seguir para criar a conexão.
// Example showing how to connect to FormBridge
window.addEventListener("FormBridgeInitialized",
function(event) {
var fb = event.detail.formBridge;
fb.connect(function() {
//use form bridge functions
})
})
Certifique-se de criar uma conexão antes de incluir o arquivo formRuntime.jsp.
getBridgeVersion()
Retorna o número da versão da biblioteca de scripts
isConnected() Verifica se o Estado do Formulário foi inicializado
Entrada: Nenhum
Saída: Verdadeiro se o Estado de Formulário XFA foi inicializado
Erros: Nenhum
connect(handler, context) Faz uma conexão com o FormBridge e executa a função depois que a conexão é feita e o Form State é inicializado
Entrada:
Saída: Nenhum
Erro: Nenhum
getDataXML(options) Retorna os dados de formulário atuais no Formato XML
Entrada:
opções:Objeto JavaScript que contém as seguintes propriedades:
Saída: Nenhuma
Erro: Nenhum
registerConfig(configName, config) Registra configurações específicas do usuário/portal com o FormBridge. Essas configurações substituem as configurações padrão. As configurações compatíveis são especificadas na seção de configuração.
Entrada:
configName: Nome da configuração a ser substituída
widgetConfig: permite que o usuário substitua os widgets padrão no formulário por widgets personalizados. A configuração é substituída da seguinte maneira:
formBridge.registerConfig("widgetConfig":{/*configuration*/})
pagingConfig: permite que o usuário substitua o comportamento padrão de renderização somente da primeira página. A configuração é substituída da seguinte maneira:
window.formBridge.registerConfig("pagingConfig":{pagingDisabled: <true>, saninkPageDisabled: <true> }).
LoggingConfig: permite que o usuário substitua o nível de registro, desative o registro de uma categoria ou exiba o console de logs ou envie para o servidor. A configuração pode ser substituída da seguinte maneira:
formBridge.registerConfig{
"LoggerConfig" : {
{
"on":`<true *| *false>`,
"category":`<array of categories>`,
"level":`<level of categories>`, "
type":`<"console"/"server"/"both">`
}
}
SubmitServiceProxyConfig: permite que os usuários registrem os serviços de envio e de proxy do agente de log.
window.formBridge.registerConfig("submitServiceProxyConfig",
{
"submitServiceProxy" : "`<submitServiceProxy>`",
"logServiceProxy": "`<logServiceProxy>`",
"submitUrl" : "`<submitUrl>`"
});
config: valor da configuração
Saída: objeto que contém o valor original da configuração na ** propriedade data.
Erro: Nenhum
hideFields(fieldArray) Oculta os campos cujas expressões Som são fornecidas no fieldArray. Define a propriedade presence dos campos especificados como invisível
Entrada:
Saída: Nenhuma
Erro: Nenhum
showFields(fieldArray) Mostra os campos cujas expressões Som são fornecidas no fieldArray. Define a propriedade presence dos campos fornecidos como visível
Entrada:
Saída: Nenhuma
Erro: Nenhum
hideSubmitButtons() Oculta todos os botões Enviar no formulário
getFormState() Retorna o JSON que representa o Estado do Formulário
Entrada: Nenhuma
Saída: Objeto que contém JSON que representa o Estado de formulário atual na ** propriedade data.
Erro: Nenhum
restoreFormState(options) Restaura o Estado do formulário a partir do estado JSON fornecido no objeto options. O estado é aplicado e os manipuladores bem-sucedidos ou de erros são chamados depois que a operação é concluída
Entrada:
Opções:Objeto JavaScript que contém as seguintes propriedades:
Saída: Nenhuma
Erro: Nenhum
setFocus (som) Define o foco no campo especificado na expressão Som
setFieldValue (som, valor) Define o valor dos campos para as expressões Som especificadas
Entrada:
Saída: Nenhuma
Erro: Emite uma Exceção no caso de uma expressão Som incorreta
getFieldValue (som) Retorna o valor dos campos para as expressões Som fornecidas
Entrada: Matriz contendo expressões Som dos campos cujo valor precisa ser recuperado
Saída: Objeto que contém o resultado como Matriz na propriedade data.
Erro: Nenhum
var a = formBridge.getFieldValue(“xfa.form.form1.Subform1.TextField”);
if(a.errors) {
var err;
while((err = a.getNextMessage()) != null)
alert(a.message)
} else {
alert(a.data[0])
}
getFieldProperties(som, propriedade) Recupera a lista de valores para determinada propriedade dos campos especificados no Som expressão
Entrada:
Saída: Objeto que contém o resultado como Matriz na ** propriedade data
Erro: Nenhum
setFieldProperties(som, propriedade, valores) Define o valor de determinada propriedade para todos os campos especificados nas expressões Som
Entrada:
Saída: Nenhuma
Erro: Nenhum
// Example 1: FormBridge.restoreFormState
function loadFormState() {
var suc = function(obj) {
//success
}
var err = function(obj) {
while(var t = obj.getNextMessage()) {
$("#errorDiv").append("<div>"+t.message+"</div>");
}
}
var _formState = // load form state from storage
formBridge.restoreFormState({success:suc,error:err,formState:_formState}); // not passing a context means that this will be formBridge itself. Validation errors will be checked.
}
//--------------------------------------------------------------------------------------------------
//Example 2: FormBridge.submitForm
function SubmitForm() {
var suc = function(obj) {
var data = obj.data;
// submit the data to a url;
}
var err = function(obj) {
while(var t = obj.getNextMessage()) {
$("#errorDiv").append("<div>"+t.message+"</div>");
}
}
formBridge.submitForm({success:suc,error:err}); // not passing a context means that this will be formBridge itself. Validation errors will be checked.
}