Javascript: set value of hidden item

Hi,
I have a select list and a hidden item on my page, after select a value, I want to write this value (and a little bit more) to the hidden item.
So I have done the following...
applied to page html header:
<script language="JavaScript" type="text/javascript">
function setExpress(item_id)
html_GetElement('P230_HIDDEN').value = 'Test ' + html_GetElement(item_id).value;
</script>
and in selection list I set the HTML Form Element Attributes to onChange="setExpress(this.id); .
But nothing is written to the hidden item. When I make it a text field it works correct.
Isn't it possible to set a value of hidden item by javascript? Is there another way to do this (without computation)?
Thanks for help
chrissy

Hello chrissy,
I don't see the connection between the item being Hidden or Text. The item id stays the same, and so the JavaScript reference to it.
It is possible to assign values to hidden items using JavaScript, just as you did. In the following page - http://htmldb.oracle.com/pls/otn/f?p=22814:8
-you can see a working example of your situation – select list populate a hidden item, then display by using alert.
After selecting from the list you should TAB out, so it will fire the JavaScript event. In your example, you were using onChange. I think that could be problematic in cases were the default value (first value) of the select list is the one chosen – no change there. In my example, I'm using onBlur.
You can see the JavaScript on the source page.
Hope this help,
Arie.

Similar Messages

  • Mapping in BPM - set value of collection item

    Hello,
    is it possible to set value to exact item of collection in mapping step in netweaver BPM?
    I need something like set(<collection_variable>,<item_index>,<item_value>)  - so exact opposite of GET generic function, which gets specific item from collection.
    Is it possible in NW BPM?

    You dont have to apologize. I didnt meant that as offend.
    I appreciate the possibility to discuss that topic with somebody, because discussion itself sometimes shows other perspective to the problem, which can lead to solution
    Of course I wrote EJB function to solve that - but I cant believe that it isnt standard solution to that pretty common use case.
    I think, that problem lays in very limited implementation of XPath into Netweaver BPM. I will bet my left hand, that in some future SP of BPM will SAP introduce something like this:
    myCollection[1]/notificationId = notificationId
    which is standard XPath way to do that

  • Passing sql report query field value to hidden item in javascript

    I have sql report which has in each row one html button. Let us say that query SHOULD look like (two columns, to be easy to get the point):
    select 1 SECURITY_ID
      , '<input type="BUTTON" value="Top10" onClick="javascript:Top10Click ('||SECURITY_ID||');" >' BTN
    FROM DUAL;
    function Top10Click (vValue) {
      html_GetElement('P31_PROCESS_VALUE').value = vValue;
      doSubmit('GO_BACK');
    } <br><br>
    where P31_PROCESS_VALUE is hidden item where i want to store value of row where click happened.
    <br><br>
    In every button i want to pass row value "SECURITY_ID" to Top10Click function for each row differently.
    <br><br>
    Problem is that when I place double qoute then js is not working, else js is ok but "SECURITY_ID" is passed as constant not as live SQL value.
    <br><br>
    Any help...THX!
    <br>
    Demo is on oracle:
    http://htmldb.oracle.com/pls/otn/f?p=26216:1
    Workspace entry:
    WK: FUNKY
    UN: [email protected]
    PW: qwertz

    I have tried to unify the solution, so it looks like:
    select 1 SECURITY_ID
      , '<input type="BUTTON" value="Top10" onClick="javascript:Top10Click ('||'&quot_X;'||SECURITY_ID||'&quot_X;'||');"  >' BTN
    FROM DUAL;change '&quot_X;' (remove "_X" part ... so it can be seen in HTML properly!
    THX Denes for great ideas...

  • How to set date value in hidden item

    I have a form which has an date item, P1_MTIME , if I use data picker and an procedure (After header)to define its default , as
    begin
    :P1_MTIME := to_char(sysdate,'DD-MON-RR HH24:MI');
    end;
    Everything works fine, but when I change P1_MTIME to hidden, I can only get its value set to date, not hour and minutes, such as 2006-06-23 00:00, what I did wrong?

    Why not just have a hidden item with the ID so that when you create (insert) it is null and you insert sysdate and when you are editing an existing value and hence have the ID you update. This logic is easy to place in a page process (when the page is submitted)

  • Get item value of hidden item in java script on standard report

    I've a report with following query:
    select "ROWID",
    "GTEMPDETAILID",
    "GTEMPID",
    "NORMTEXT",
    "ITEMTYP",
    "ITEM",
    "BEMERKUNG"
    from "#OWNER#"."ALAVIS_GTEMPDETAILS"
    Item GTEMPDETAILID is hidden (set in column attributes).
    I defined an onclick event in the report template to set the value of GTEMPDETAILID into a Page item. This works, if the GTEMPDETAILID is not hidden. But how can I get the value of an hidden item in javascript?

    I am guessing this hidden value is not a protected item because youre manipulating the value. How about setting is a textfield but inside the "HTML form element" property, specify style="display:none;" or you can nest <script type="text/javascript">$x_Hide("ID_OF_TEXTFIELD");</script> in the page somewhere...
    Question, have you tried using $x_Value('ID_OF_ITEM','VALUE_OF_ITEM') ? this is APEX javascript API
    you can also use $x('ID_OF_ITEM') to retrieve DOM object, or $v('ID_OF_ITEM); to retrieve item values.
    Let me know if you need additional assistance.
    Edited by: srbonham1 on Jul 27, 2012 4:31 PM

  • Javascript setting value in session state

    I have a javascript that figures our the interest rate for a mortgage loan based on principal balance, term and monthly payment. The script also rounds up to the nearest 8th. Here is the line code that sets the value on the APEX form:
    document.getElementById('P2_NOTE_RATE_TO_PITIA_31').value = cRate.toFixed(3);
    Obviously this line code doesn't set session state for the value. Users have to submit the form again to pass this new rate to other calculations on the forms.
    Is there another piece of code I need to add to force value to session state? The javascript is called via the page load and it will produce the correct rate when ever values are changed to warrant a new interest rate to be calculated.
    Here is the entire javascript:
    function loanrate() { 
    function getVal(item){
    if($x(item).value != "")
    return parseFloat($x(item).value);
    else
    return 0 ;
    //Allow rates of 0 to 100%, solve to the nearest 0.001%
    var a=0.00001;
    var b=1;
    var tol=0.00001;
    var test;
    var t;
    var y1;
    var y2;
    var P = getVal('P2_NEW_BAL_CALC');
    var A = getVal('P2_NEW_PI_TARGET');
    var N = getVal('P2_REMAINING_TERM');
    var nRate;
    var cRate;
    var root;
    var TEMP = a;
    // Allow only 100 iterations (more than enough for convergence)
    for(var k = 1; k<=100; k++) {
    // A*(Math.pow((1+i),N)-1)/(i*Math.pow((1+i),N)) = present worth of N payments of A (beginning
    // 1 period from now)
    // Finally, subtract P (the present worth, or the price).
    i = a;
    y1 = A *(Math.pow((1+i),N)-1)/(i*Math.pow((1+i),N))- P;
    i = b;
    y2 = A *(Math.pow((1+i),N)-1)/(i*Math.pow((1+i),N))- P;
    test = y1*y2;
    // If test>0, the function that is to be driven to zero has the same sign
    // for both sides of the interval.
    if (test>0) {
    b = a;
    a = TEMP;
    a = (a+b)/2;
    } else {
    // If test <0, the root of the equation is between a and b.
    // If the interval is small enough, return (a+b)/2 as the root.
    // If not, bisect the interval: save a as TEMP, move a (new) halfway toward b.
    t = (b-a)/2;
    if (t<tol) {
    root = (a+b)/2;
    // Compute the annual compounded rate, if payments are monthly
    //var annual = 100*(Math.pow((1+root),12)-1);
    root = root * 100;
    nRate = Math.round(1000 * root)/1000 ;
    cRate = (Math.ceil((nRate * 12)/.125)*.125);
    document.getElementById('P2_NOTE_RATE_TO_PITIA_31').value = cRate.toFixed(3);
    //$x_Value('P4_ANNUAL_RATE',Math.round(1000*annual)/1000);
    break;
    } else {
    TEMP = a;
    a = (a+b)/2;
    }

    I believe the following will do what you need.
    document.getElementById('P2_NOTE_RATE_TO_PITIA_31').value = cRate.toFixed(3);
    var get = new htmldb_Get(null,&APP_ID.,'APPLICATION_PROCESS=dummy',0);
    get.add('P2_NOTE_RATE_TO_PITIA_31',$x('P2_NOTE_RATE_TO_PITIA_31').value)
    gReturn = get.get();
    ...

  • How to set value of application item using Java script.

    I have created a textbox on page 0, on chnage of textbox i want to set the value of application item.
    How to write the code to set & get value of application item.
    Thanks,
    -Amit

    Hello Amit
    This would be a great place to start...
    JavaScript
    Alternatively, APEX 4.0 will make this sort of task declarative.
    Kind regards
    Simon Gadd

  • Setting value of an item using item_id

    howdy,
    You know when you set value of a text or display item using its name, ie:
    :block_name.item_name := 'abc';
    Well, I would like to do the same, but using its item_id.
    Can it be done?
    The reason behind it is that, I have 50 text items on canvas. They all follow some naming convention, and I would like to set their values in some elegant loop, rather than writing a page-long code referencing their :block_name.item_name.
    thanks and kind regards
    mz.

    Would the COPY built-in work for you? For example 50 items called genericItem1, genericItem2, ...
    for i in 1..50 loop
    COPY('new value', 'block.genericItem' || to_char(i));
    end loop;
    Regards,
    Candace Stover
    Forms Product Management

  • Setting custom table attribute set value in region item table

    Dear all
    I am working on oracle application customization and extension in
    oracle JDeveloper R12. I am finding a difficulty in an query region of
    a OA framework page
    My Entity object is on the table FWK_TBX_ADDRESS table
    and VO objects has the fields or columns
    AddressName, AddreessId, TownC-OrCity
    what I am doing shown in the following steps
    1-I select region using wizard option
    2-select my AM and VO
    3-select table as style
    4-shuttle all attributes associated with VO
    5-in region items table , select the Attribute set field for AddressName attribute and click the serach flashligh icon
    6-After that select the browse button , using the package browser , expand down to oracle > apps > fnd> framwork > toolbox > attributesets, then oK
    7-select the serach control , and then it list all the attributes set related to fwkTbxEmployees table like the following
    /oracle/apps/fnd/framewok/toolbox/attributesset/FwkTbxAddress/AddressName
    Now the problem which I am facing now is that if I have custom table suppose "xxEmployees" and have attributes or column
    for example employeeId, employee_name, email etc. what would I do to search these attributes when I come to step number 6 which
    I mentioned above. from where in which package I can find these attributes to set attributesset value. in above i find these attributes
    in /oracle/apps/fnd/framewok/toolbox/attributesset/FwkTbxAddress/AddressName
    but in my case for attribute lie employeeId or employee_name from where I can get this how can I set the value of attribute set field in regin item
    table in step 5
    Noman

    I dont know what u trying to ask
    My problem is just that I want to set the attribute set value of my attribute employee_name, same is AddressId in fwk_tbx_address
    ame is AddressId in fwk_tbx_address found on
    /oracle/apps/fnd/framewok/toolbox/attributesset/FwkTbxAddress/AddressName
    where can I find my attribute employee_name
    in jdeveloper

  • Add an ability to set password for hidden items

    Password foe hidden item in swip menu

    In other words you want to be able to hide folders from the album app and only be able to access them through a password
    "I'd rather be hated for who I am, than loved for who I am not." Kurt Cobain (1967-1994)

  • Set value of hidden database item

    I have a simple non-tabular form for creating rows in a table. I need to set the value of a hidden database item to be the same as a database item which the user enters.
    I know this can be done by a database trigger and also by a custom update process, but is there other (simpler) way to do this ?
    Vincent

    Vincent,
    By "hidden database item", I'm assuming that you mean a column in a table. By "database item which the user enters", I'm assuming that you mean a page item on your form. If that's correct, just edit that item in the builder, making its source type 'Database Column' and its source the column name, and the automatic row fetch and DML processes on the page will take care of the rest. If you mean something else, let us know.
    Scott

  • Af:inputListOfValues sets value of first item in result set when using enter key or tab and component set to autosubmit=true

    I'm using JDev 11.1.1.6 and when I type a value into an af:inputListOfValues component and hit either the enter key or the tab key it will replace the value I entered with the first item in the LOV result set. If enter a value and just click out of the af:inputListOfValues component it works correctly. If I use the popup and search for a value it works correctly as well. I have a programmatic view object which contains a single transient attribute (this is the view object which is used to create the list of value component from) and then I have another entity based view object which defines one of its attributes as a list of value attribute. I tried using an entity based view object to create the LOV from and everything works as expected so I'm not sure if this is a bug when using programmatic view objects or if I need more code in the VOImpl. Also, it seems that after the first time of the value being replaced by the first value in the result set that it will work correctly as well. Below are some of the important code snippets.
    Also, it looks like it only doesn't work if the text entered in the af:inputListOfValues component would only have a single match returned in the result set. For instance given the result set in the code: Brad, Adam, Aaron, Fred, Charles, Charlie, Jimmy
    If we enter Cha, the component works as expected
    If we enter A, the component works as expected
    If we enter Jimmy, the component does not work as expected and returns the first value of the result set ie. Brad
    If we enter Fred, the component does not work as expected and returns the first value of the result set ie. Brad
    I also verified that I get the same behavior in JDev 11.1.1.7
    UsersVOImpl (Programmatic View Object with 1 transient attribute)
    import java.sql.ResultSet;
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import oracle.adf.share.logging.ADFLogger;
    import oracle.jbo.JboException;
    import oracle.jbo.server.ViewObjectImpl;
    import oracle.jbo.server.ViewRowImpl;
    import oracle.jbo.server.ViewRowSetImpl;
    // ---    File generated by Oracle ADF Business Components Design Time.
    // ---    Wed Sep 18 15:59:44 CDT 2013
    // ---    Custom code may be added to this class.
    // ---    Warning: Do not modify method signatures of generated methods.
    public class UsersVOImpl extends ViewObjectImpl {
        private static ADFLogger LOGGER = ADFLogger.createADFLogger(UsersVOImpl.class);
        private long hitCount = 0;
         * This is the default constructor (do not remove).
        public UsersVOImpl () {
         * executeQueryForCollection - overridden for custom java data source support.
        protected void executeQueryForCollection (Object qc, Object[] params, int noUserParams) {
             List<String> usersList = new ArrayList<String>();
             usersList.add("Brad");
             usersList.add("Adam");
             usersList.add("Aaron");
             usersList.add("Fred");
             usersList.add("Charles");
             usersList.add("Charlie");
             usersList.add("Jimmy");
             Iterator usersIterator = usersList.iterator();
             setUserDataForCollection(qc, usersIterator);
             hitCount = usersList.size();
             super.executeQueryForCollection(qc, params, noUserParams);
        } // end executeQueryForCollection
         * hasNextForCollection - overridden for custom java data source support.
        protected boolean hasNextForCollection (Object qc) {
             Iterator usersListIterator = (Iterator)getUserDataForCollection(qc);
             if (usersListIterator.hasNext()) {
                 return true;
             } else {
                 setFetchCompleteForCollection(qc, true);
                 return false;
             } // end if
        } // end hasNextForCollection
         * createRowFromResultSet - overridden for custom java data source support.
        protected ViewRowImpl createRowFromResultSet (Object qc, ResultSet resultSet) {
             Iterator usersListIterator = (Iterator)getUserDataForCollection(qc);
             String user = (String)usersListIterator.next();
             ViewRowImpl viewRowImpl = createNewRowForCollection(qc);
             try {
                 populateAttributeForRow(viewRowImpl, 0, user.toString());
             } catch (Exception e) {
                 LOGGER.severe("Error Initializing Data", e);
                 throw new JboException(e);
             } // end try/catch
             return viewRowImpl;
        } // end createRowFromResultSet
         * getQueryHitCount - overridden for custom java data source support.
        public long getQueryHitCount (ViewRowSetImpl viewRowSet) {
             return hitCount;
        } // end getQueryHitCount
        @Override
        protected void create () {
             getViewDef().setQuery(null);
             getViewDef().setSelectClause(null);
             setQuery(null);
        } // end create
        @Override
        protected void releaseUserDataForCollection (Object qc, Object rs) {
             Iterator usersListIterator = (Iterator)getUserDataForCollection(qc);
             usersListIterator = null;
             super.releaseUserDataForCollection(qc, rs);
        } // end releaseUserDataForCollection
    } // end class
    <af:inputListOfValues id="userName" popupTitle="Search and Select: #{bindings.UserName.hints.label}" value="#{bindings.UserName.inputValue}"
                                                  label="#{bindings.UserName.hints.label}" model="#{bindings.UserName.listOfValuesModel}" required="#{bindings.UserName.hints.mandatory}"
                                                  columns="#{bindings.UserName.hints.displayWidth}" shortDesc="#{bindings.UserName.hints.tooltip}" autoSubmit="true"
                                                  searchDesc="#{bindings.UserName.hints.tooltip}"                                          
                                                  simple="true">
                              <f:validator binding="#{bindings.UserName.validator}"/>                      
    </af:inputListOfValues>

    I have found a solution to this issue. It seems that when using a programmatic view object which has a transient attribute as its primary key you need to override more methods in the ViewObjectImpl so that it knows how to locate the row related to the primary key when the view object records aren't in the cache. This is why it would work correctly sometimes but not all the time. Below are the additional methods you need to override. The logic you use in retrieveByKey would be on a view object by view object basis and would be different if you had a primary key which consisted of more than one attribute.
    @Override
    protected Row[] retrieveByKey (ViewRowSetImpl viewRowSetImpl, Key key, int i) {
        return retrieveByKey(viewRowSetImpl, null, key, i, false);
    @Override
    protected Row[] retrieveByKey (ViewRowSetImpl viewRowSetImpl, String string, Key key, int i, boolean b) {
        RowSetIterator usersRowSetIterator = this.createRowSet(null);
        Row[] userRows = usersRowSetIterator.getFilteredRows("UserId", key.getAttribute(this.getAttributeIndexOf("UserId")));
        usersRowSetIterator.closeRowSetIterator();
        return userRows;
    @Override
    protected Row[] retrieveByKey (ViewRowSetImpl viewRowSetImpl, Key key, int i, boolean b) {
        return retrieveByKey(viewRowSetImpl, null, key, i, b);

  • How to Set Value of page item?

    String dimLayoutNew[][] = new String[3][];
    dimLayoutNew[0] = new String[1];
    dimLayoutNew[1] = new String[1];
    dimLayoutNew[2] = new String[2];
    dimLayoutNew[0][0] = measureString;
    dimLayoutNew[1][0] = strDimension1;
    dimLayoutNew[2][0] = strDimension2;
    dimLayoutNew[2][1] = strDimension3;
    Boolean applyNewLayoutFlag = tableQuery.layout(dimLayoutNew);
    In this Layout,How to set the value of strDimension2 page item to one member of strDimension2?
    thanks!

    what about this - look up the javadoc to get more >info ....You would have to admit, while BI Beans are great, the documentation is a little light.
    int targetHPos[] = targetDataAccess.getEdgeCurrentHPos (2);
    now apply the order to the targethpos as you like...now, once you make your changes to the targetHPos, how does one actually make the change to the Query object (i.e. what method does one need to call to pass the new targetHPos in??) I looked through the JavaDoc and didn't see a SetCurrentHPos or equivalent function in the DataAccess Class. Is there one?
    Also, what role, if any, should the SetCurrentPage method of the query object play if I'm not using it correctly?

  • Javascript Set Value

    Hallo,
    i have a Script:
    if ($('table.apexir_WORKSHEET_DATA tr').size() ==2 )
    $s('P1_VARIANTE_', $v('P1_VARIANTE'))
    when the IR Report Shows one result, the value of "P1_variante_" is become the value from "P1_variante"
    Without Submit the Page the Value is not saved
    How can i Save the Value - i tested "doSubmit('REQUEST')" and it works but the IR report is
    still 1 and Submit every time!
    I want 1 Submit.
    can you help me?
    (Sry for my bad english, i hope you can understand)
    Mike

    Just to confirm what I have understood from your original question,
    <li>You want to set that Item without submitting the page everytime the IR report is refreshed ?
    For example after a new search filter, or columnfilter ?
    If so try adding the following JS code on page load
    $('#apexir_WORKSHEET_REGION').bind('apexafterrefresh',function(){
      if ($('table.apexir_WORKSHEET_DATA tr').size() ==2 )
      $s('P1_VARIANTE_', $v('P1_VARIANTE'))
    });Note that the item is set with the value everytime on IR refresh, but it gets the new value in session only after a submit
    Also if you are using "$('table.apexir_WORKSHEET_DATA tr').size()" to identify if only one record is fetch (one heading row and one data row) , it could have issues when the report uses row breaks etc(they add extra tr's under that table element )
    Edited by: vee on Jan 26, 2011 2:48 AM

  • Set value to each item with loop instruction

    Hello,
    I use a collection to change dynamically my interactive report.
    But I need to fetch the column names of my query to display the right column headings.
    So I created items for each of these : :P13_C001, :P13_C002, :P13_C003, etc. to give their value to my report columns.
    And I tried a before header process :
    DECLARE
    Vs_Id USER_TAB_COLUMNS.COLUMN_ID%TYPE;
    Vs_Name USER_TAB_COLUMNS.COLUMN_NAME%TYPE;
    BEGIN
    for i in 1..50
    loop
    SELECT column_id, column_name
    INTO Vs_Id, Vs_Name
    FROM USER_TAB_COLUMNS
    WHERE TABLE_NAME = My_Table
    AND COLUMN_ID = i;
    ':P13_C00' || i := Vs_Name ;
    end loop;
    END;------------------------------------------------------------------------------------------------
    unfortunately it's not working, I've got a synthax error :
    The following error has occurred:
    ORA-06550: Ligne 12, colonne 11 :
    PLS-00103: Symbole ":P13_C00" rencontré à la place d'un des symboles suivants :
    *( begin case declare end exit for goto if loop mod null*
    pragma raise return select update while with ........
    Anyone would have an idea ?
    Thanks!
    Fanny

    Of course this one woks fine, but it would be too bad not to use a simplier method... :
    DECLARE
        Vs_Id    USER_TAB_COLUMNS.COLUMN_ID%TYPE;
        Vs_Name   USER_TAB_COLUMNS.COLUMN_NAME%TYPE;
    BEGIN
            SELECT   column_id, column_name
              INTO   Vs_Id, Vs_Name
              FROM   USER_TAB_COLUMNS
              WHERE  TABLE_NAME = My_Table
                AND  COLUMN_ID = 1;
          :P13_C001 := Vs_Name ;
            SELECT   column_id, column_name
              INTO   Vs_Id, Vs_Name
              FROM   USER_TAB_COLUMNS
              WHERE  TABLE_NAME = My_Table
                AND  COLUMN_ID = 2;
          :P13_C002 := Vs_Name ;
            SELECT   column_id, column_name
              INTO   Vs_Id, Vs_Name
              FROM   USER_TAB_COLUMNS
              WHERE  TABLE_NAME = My_Table
                AND  COLUMN_ID = 3;
          :P13_C003 := Vs_Name ;
    END;

Maybe you are looking for