Jquery .html возвращает строку функции

0

Ситуация: Я использую функцию Jquery.insertAtCaret для заполнения нескольких текстовых полей из базы данных. Затем пользователь может подтвердить/отредактировать значения, прежде чем "сохранить" текущие значения обратно в базу данных.

/*Input emergency into text area*/

$('#emergInstructor').insertAtCaret(emergInstructor);
$('#emergStudent').insertAtCaret(emergStudent);
$('#emergDate').insertAtCaret(datetoday);
$('#emergEmergency').insertAtCaret(emergEmergency);

/*Save current values into Database*/
$("#savesetup").click(function() {  
var setupinstructor = $("#emergInstructor:text").text();
var setupstudent = $("#emergStudent:text").text();
var setupemergency = $("#emergEmergency:text").text();
var today = Date.today().toString('d-MMM-yyyy');
var setupperformance = $("#performance:selected").text();
var setupcomments = $("#comments:text").text();
var setupsql = "INSERT INTO fullemerghistory (instructor, student, emergency, datey, performance, comments) VALUES('"+ setupinstructor +"', '"+ setupstudent +"', '"+ setupemergency+ "', '"+ today +"', '"+ setupperformance +"', '"+ setupcomments +"')";
    if(myDB.query(setupsql)) {
        alert("Inserted!");
     }


 });    

Проблема: инструкция INSERT пытается добавить строку функции, часть которой ниже (ее довольно длинная!):

'function(e){return y.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(pt,""):t;if(typeof e=="string"&&!wt.test(e)&&(y.support.htmlSerialize||!dt.test(e))&&(y.support.leadingWhitespace||!vt.test(e))&&!Ct[(gt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(mt,"<$1>");try{for(;r

Вопрос: Я считаю, что функция insertAtCaret является проблемой, однако я не знаю с чего начать. Я хочу заполнить базу данных текущими значениями в текстовых областях.

Любая помощь приветствуется.

  • 0
    Где именно вы используете .html ? Где вы определяете emergInstructor ? вы, вероятно, где-то оставили () .
  • 0
    Спасибо за ответ. emergInstructor определяется следующим образом: $.each(emergjson, function(key, value) { window.emergInstructor = value.instructor; window.emergStudent = value.student; window.emergEmergency = value.emergency; }); где emergjson - это массив Json, извлеченный из базы данных. Я посмотрю в () вопрос.
Теги:
function

1 ответ

0
Лучший ответ

Сработало!

Я изменил селектор JQuery и использовал функцию.val:

$("#savesetup").click(function() {  
var setupinstructor = $('#emergInstructor').val();
var setupstudent = $('#emergStudent').val();
var setupemergency = $('#emergEmergency').val();
var today = Date.today().toString('d-MMM-yyyy');
var setupperformance = $('#performance').val();
var setupcomments = $('#comments').val()
 )};

Спасибо KevinB за толкание в правильном направлении.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню