我有这个问题: 我在动态操作中有这个JavaScript代码:
var vMe = $(this.triggeringElement);
var vRow = $(vMe).parents(".meAllRow");
var vSeqID = $(vRow).find("[headers=SEQ_ID]").html();
var vEstado = $(vRow).find("[name=f01]").val();
apex.server.process("ajx_Cambia_estado",{x01:vSeqID,x02:vEstado});
这是PL-SQL代码
DECLARE
vEstado VARCHAR2(1);
vSeq NUMBER := to_number(APEX_APPLICATION.g_x01);
BEGIN
IF (APEX_APPLICATION.g_x02 = 'A') THEN
vEstado := 'I';
ELSE
vEstado := 'A';
END IF;
APEX_COLLECTION.UPDATE_MEMBER (
p_collection_name => 'DINAMIC_LIST',
p_seq => vSeq,
p_c002 => vEstado);
END;
当我执行动态操作时,它会抛出此错误:
SyntaxError:JSON的意外结束
但是当我在PL-SQL中返回时:
htp.p('"process":"finish"');
错误消失。但我不需要发送响应消息,在Apex 4.2中我没有这个问题。
答案 0 :(得分:2)
尝试:
DECLARE
vEstado VARCHAR2(1);
vSeq NUMBER := to_number(APEX_APPLICATION.g_x01);
BEGIN
IF (APEX_APPLICATION.g_x02 = 'A') THEN
vEstado := 'I';
ELSE
vEstado := 'A';
END IF;
APEX_COLLECTION.UPDATE_MEMBER (
p_collection_name => 'DINAMIC_LIST',
p_seq => vSeq,
p_c002 => vEstado);
apex_json.open_object;
apex_json.write('success', true);
apex_json.close_object;
END;