Установите переменную сеанса с помощью поля выбора через jQuery / Ajax с Coldfusion - PullRequest
0 голосов
/ 08 июля 2010

Хорошо, вот моя эпическая проблема с путешествием, которая продолжается уже месяц ...:

Первая проблема: я строил форму с тегами coldfusion-ajax, которая была самой страшной ошибкой за всю историю.IE полностью ненавидит это, и я не мог связать что-либо.ДА, мой код был верным.Я проверил это многими людьми и многими форумами.Так что у меня НЕТ ИДЕИ, что было не так.

Так что о ajax-тегах coldfusion не может быть и речи ... они не будут работать с моей настройкой сервера ... Я не знаю.(Я не контролирую свой сервер, на котором я работаю)

Итак ... теперь, когда я SOL и плачу в своем офисе, как сумасшедший человек ... Теперь я решил обойти проблему,используя jQuery + Coldfusion.

Это тоже не работает ...

Вот новая проблема: Мне нужно иметь поле выбора, которое было предварительно заполнено установитьпеременная сеанса .Другими словами:

Я хочу передать переменную формы на страницу, которая установит переменную сеанса равной этой переменной формы ...

Примечание: я использую CF 8.

Вот мой код:

форма:

<form>
    <select name="DeptCode" id = "dept">
    <option value="NONE" selected>Choose a Department
    <cfoutput query="getDepartments">
    <option value="#DeptCode#">#DeptName#</option>
    </cfoutput>
    </select>
    </form>
    <cfoutput> #session.DeptCode#</cfoutput>

jQuery / Ajax:

<script language = "javascript">
$('#dept').change(
        function() {

            var datas = $('#dept').val();
            $.ajax({
            url: 'url:catch.cfc?method=getDept',
            data: {dept: datas}
            success: function(datas) { alert(datas); }
             });
}); 
</script>

catch.cfc

<cfcomponent output="false">
    <cffunction name="setDept" access="remote" returntype="any">
        <cfargument name="dept" type="any" required="yes">
        <cfset session.DeptCode = #argument.dept#>
        <cfreturn />
    </cffunction>
</cfcomponent>

1 Ответ

3 голосов
/ 09 июля 2010

Я не уверен, что вы обновили что-то с момента публикации своего кода, или, возможно, были опечатки во время транскрипции - но есть некоторые синтаксические проблемы:

$('#dept').change( function() {
  var datas = $('#dept').val(); // always yields a result in real code?
  $.ajax({
    url: 'catch.cfc?method=getDept', // You repeated "url:" in your url
    data: {dept: datas}, // added missing final comma
    success: function(datas) { alert(datas); }
  });
}); 

Просто мысль.

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