Coldfusion выполнить хранимую процедуру без обновления страницы? - PullRequest
2 голосов
/ 14 декабря 2011

У меня есть хранимая процедура с параметром «выбора»

<cfstoredproc procedure="MyProcedure" datasource="MyDataSource">
  <cfprocparam type="in" cfsqltype="cf_sql_integer" value="#selection#" null="no">
</cfstoredproc>

У меня есть поле выбора, где пользователь может выбрать поле, и я хотел бы использовать jquery для «вызова» хранимой процедуры:

$(document).ready(function(){
        $('#selectbox').change(function() {
            // update my #selection# variable
                        // run the stored procedure again (the one above)
        });
    });

Есть ли способ сделать это? Я знаю, что он смешивает код на стороне клиента и на сервере, но я не могу обновить страницу, потому что на странице несколько форм ...

Ответы [ 3 ]

6 голосов
/ 14 декабря 2011
$(document).ready(function(){
        $('#selectbox').change(function() {
            $.get('pathToYourStoredProcCFM.cfm?selectVal=' + $(this).val(), function (res) {

               // if you need to handle the response to the stored proc 
               // on the client side (which was output in your CFM code), do so here
               // (the response from CF is stored in the "res" variable)

            });

        });
    });
2 голосов
/ 14 декабря 2011

Вам потребуется создать страницу .cfm с хранимой процедурой в ней и использовать вызов AJAX для выполнения хранимой процедуры.

storeProc.cfm

<cfparam name="URL.selection" />

<cfstoredproc procedure="MyProcedure" datasource="MyDataSource">
  <cfprocparam type="in" cfsqltype="cf_sql_integer" value="#URL.selection#" null="no" />
</cfstoredproc>

$(document).ready(function(){
        $('#selectbox').change(function() {
            // update my #selection# variable
            $.get("storedProc.cfm", { selection: $(this).val() } );        
      });
    });
0 голосов
/ 14 декабря 2011

Вам нужно будет поместить вызов Stored Proc в отдельный файл CFM для вызова jquery.Вы не можете сослаться на тот, который указан на вашей странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...