Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将目标项ID传递给ApplicationExpress(Apex)动态表单上的ajax回调_Ajax_Oracle Apex - Fatal编程技术网

将目标项ID传递给ApplicationExpress(Apex)动态表单上的ajax回调

将目标项ID传递给ApplicationExpress(Apex)动态表单上的ajax回调,ajax,oracle-apex,Ajax,Oracle Apex,扩展Trent Schafer的优秀作品 我根据静态问题,利用Oracle文本,在每个答案项旁边添加了一个包含记录标题/摘要的选择列表 上述链接用于使用mods和下面未显示的save操作填充下面所示的页面结构。选择列表的onchange事件将检索完整记录并填充答案项,通过其ID标识答案项,该ID在匿名块中创建并命名为ans_var2 onchange事件导致变量ans_var2特定的变量声明部分出现TypeError ans_var2应该通过p_属性传入 控制台返回“未定义” 我已经使用定义的答

扩展Trent Schafer的优秀作品

我根据静态问题,利用Oracle文本,在每个答案项旁边添加了一个包含记录标题/摘要的选择列表

上述链接用于使用mods和下面未显示的save操作填充下面所示的页面结构。选择列表的onchange事件将检索完整记录并填充答案项,通过其ID标识答案项,该ID在匿名块中创建并命名为ans_var2

onchange事件导致变量ans_var2特定的变量声明部分出现TypeError

ans_var2应该通过p_属性传入

控制台返回“未定义”

我已经使用定义的答案项ID成功地测试了下面的代码,但是表单是动态的,有未知数量的Q/a对

问题:

请告知是否有一种功能性方法可以发送动态生成的应答项ID,因为ans_var2方法可能只是错误的,或者语法不正确

顶点5.1.2

--***Function and Global Variable Declaration***

function myFunction(val, ans_var2) {

apex.server.process(
    'lab_ondemand',                             // Process or AJAX Callback name
    {x01: val
    },  // Parameter "x01"
     {
      success: function (pData) {             // Success Javascript
    apex.item("ans_var2").setValue(pData);
      },
      dataType: "text"                        // Response type (here: plain text)
    }
  );
}

--***PL/SQL Dynamic Content***

declare
ans_length number;
id_holder varchar2(4000) :='';
ans_var2 varchar2(4000) :='';
begin

    for i in (
        select *
        from v_dynamic_qs
    )
    loop    

sys.htp.prn('<table border="1" style="wide: 100%">');
sys.htp.prn('<tbody>');
sys.htp.prn('<tr>');     

    sys.htp.prn(' <td style="width:400px; valign:top";>');
    sys.htp.prn('ID: ' || i.ID || '<br> Question Key: '||  i.question_key || '<br> Answer ID: ' || i.ans_id || '<br>');
    sys.htp.prn(i.ID || '. ' || i.question_key || ' ' || i.ans_id);
sys.htp.prn('<a title="Properties" href="'||apex_util.prepare_url('f?p='||:APP_ID||':10:&SESSION.:::10:P10_ID:'||i.ID)||' "> <img src="#APP_IMAGES#go_icon.png" title="" alt="Open MS Word" height="22" width="22"></a>');
sys.htp.prn('<a title="" href="'||apex_util.prepare_url('f?p='||:APP_ID||':12000:&SESSION.:::10:P12000_ID,P12000_ANS_ID:'||i.ID || ',' || i.ANS_ID)||' "> <img src="#APP_IMAGES#find.jpg" title="" alt="" height="22" width="22"></a>');

sys.htp.prn(' </td>');
sys.htp.prn(' <td style="width:400px; valign:top";>');

if i.question_type = 'TEXT'
        then
            htp.prn('<p> <input class="dynamicQs" id="QS_' || i.question_key || '" type="text" value="' || i.question_ans || '" /></p>');
        elsif i.question_type = 'TEXTAREA'
        then
            htp.prn('<p> <textarea class="dynamicQs" id="QS_' || i.question_key || '">' || i.question_ans || '</textarea></p>');

select 'QS_' || i.question_key into ans_var2 from dual;           

end if;    

id_holder := i.ans_id;
            htp.p(
                APEX_ITEM.SELECT_LIST_FROM_QUERY_XL(
    p_idx           =>    1,
    p_value         =>    NULL,
    p_query         =>    'select QUESTION from TBLRECORDS where contains(myindex, ''about(' ||i.question_key||')'', 1) >0',
    p_attributes    =>    'style="width:250px;" onchange="myFunction(this.value, ans_var2);"',             
    p_show_null     =>    'YES',
    p_null_value    =>    '%NULL%',
    p_null_text     =>    '',
    p_item_id       =>    id_holder,
    p_item_label    =>    NULL,
    p_show_extra    =>    'YES')
            );

    sys.htp.prn(' </td>');                               
    htp.p('<br /><br />');     
  sys.htp.prn('</tr>');
  end loop;
sys.htp.prn('</tbody>');    
sys.htp.prn('</table>');
end;

--***Ajax Callback***

declare
  l_emprow TBLRECORDS%ROWTYPE;
begin
  select * into l_emprow
  from TBLRECORDS 
  where QUESTION = apex_application.g_x01;
  htp.p(
        'ANSWER:'||l_emprow.ANSWER);
end;

请告知是否有人可以协助。我在试图通过on change call将目标字段传递到随需应变流程时遇到类型错误。这个障碍对我来说是巨大的,因为我对随需应变流程还不熟悉,我很欣赏任何智慧。谢谢