1
jqTouch 웹 앱에서 자바 스크립트 양식을 사용하려하지만 '제출'버튼을 클릭하면 , 그것은 아무것도하지 않으며, 크롬이 함께 팝업 : "("구문 오류 (코드 5)"구문 오류 (코드 오류 5 일 때)"(근처에 1 개) 문을 준비 할 수 없습니다. "
내 HTML 아차 오류가 문 1 근처) "준비 할 수 있었다!"
<div id="createEntry">
<div class="toolbar">
<h1>New Entry</h1>
<a class="button cancel" href="#">Cancel</a>
</div>
<form method="post">
<ul class="rounded">
<li><input type="text" placeholder="What" name="what" id="what"></li>
<li><input type="text" placeholder="When" name="when" id="when"></li>
<li><input type="text" placeholder="Comments" name="comments" id="comments"></li>
<li><input type="submit" class="submit" name="action" value="Save Entry"></li>
</ul>
</form>
</div>
을
여기 내 자바 스크립트입니다 :
var jQT= $.jQTouch({
icon:'kilo.png'
});
var db;
$(document).ready(function(){
$('#createEntry form').submit(createEntry);
});
var shortName = 'AstronomersAid';
var version = '1.1';
var displayName = 'AstronomersAid';
var maxSize = 65536;
db = openDatabase(shortName, version, displayName, maxSize);
// database upgrade function as described on page 133.
if (db.version == '1.0') {
db.changeVersion('1.0', version,
function(transaction) {
transaction.executeSql(
'ALTER TABLE entries ' +
' ADD COLUMN longitude TEXT');
transaction.executeSql(
'ALTER TABLE entries ' +
' ADD COLUMN latitude TEXT');
},
function(e) {
alert('DB upgrade error: ' + e.message);
}
);
} else if (db.version == '') {
db.changeVersion('', version);
} // end database upgrade.
function refreshEntries() {
var currentDate = sessionStorage.currentDate;
$('#passport h1').text(currentDate);
$('#passport ul li:gt(0)').remove();
db.transaction(function(transaction)
{
transaction.executeSql(
'SELECT * FROM entries WHERE date = ? ORDER BY food;',
[currentDate], function (transaction, result)
{ for (var i=0; i < result.rows.length; i++)
{
var row = result.rows.item(i);
var newEntryRow = $('#entryTemplate').clone();
newEntryRow.removeAttr('id');
newEntryRow.removeAttr('style');
newEntryRow.data('entryId', row.id);
newEntryRow.appendTo('#passport ul');
newEntryRow.find('.label').text(row.what);
newEntryRow.find('.when').text(row.when);
newEntryRow.find('.delete').click(function(e) {
var clickedEntry = $(this).parent();
var clickedEntryId = clickedEntry.data('entryId');
deleteEntryById(clickedEntryId);
clickedEntry.slideUp();
e.stopPropogation();
});
newEntryRow.click(entryClickHandler);
}
}, errorHandler
);
}
);
} // end refreshEntries function.
function entryClickHandler(e){
sessionStorage.entryId = $(this).data('entryId');
db.transaction(
function(transaction) {
transaction.executeSql(
'SELECT * FROM entries WHERE id = ?;',
[sessionStorage.entryId],
function (transaction, result) {
var row = result.rows.item(0);
var what = row.what;
var when = row.when;
var comments = row.comments;
$('#inspectEntry input[name="what"]').val(what);
$('#inspectEntry input[name="when"]').val(when);
$('#inspectEntry input[name="comments"]').val(comments);
jQT.goTo('#inspectEntry', 'slideup');
},
errorHandler
);
}
);
} // end entryClickHandler
function createEntry() {
var what = $('#what').val();
var when = $('#when').val();
var comments = $('comments').val();
db.transaction(
function(transaction) {
transaction.executeSql(
'INSERT INTO entries (what, when, comments)
VALUES (?, ?, ?, ?);',
[what, when, comments],
function(){
refreshEntries();
jQT.goBack();
},
errorHandler
);
}
);
return false;
}
function insertEntry(latitude, longitude) {
var what = $('#what').val();
var when = $('#when').val();
var comments = $('#comments').val();
db.transaction(
function(transaction) {
transaction.executeSql(
'INSERT INTO entries (what, when, comments) ' +
'VALUES (?, ?, ?);',
[what, when, comments],
function(){
refreshEntries();
checkBudget();
jQT.goBack();
},
errorHandler
);
}
);
} // end insertEntry function.
function errorHandler(transaction, error) {
alert('Oops! Error was ' + error.message + ' (Code ' + error.code + ')');
return true;
} // end errorHandler
function deleteEntryById(id){
db.transaction(function(transaction) {
transaction.executeSql(
'DELETE FROM entries WHERE id=?;', [id], null, errorHandler);
}
);
} // end deleteEntryById function.
아무도 나를 도와 줄 수 있습니까? 나는 지난 3 일 동안 다른 일을 시도해 왔지만 아무 것도 효과가 없었다.
좋아요, 그랬습니다 .... 이제는 "그런 테이블이 없다"고 말하고 있습니다 ... 데이터베이스를 지울 필요가 있다고 생각합니까? 그래도 어떻게해야할지 모르겠다. – user3502665
아니요, 당신은 DB를 지울 필요가 없습니다. sql 쿼리에서 적절한 테이블 이름을 확인해야합니다. 실제로 "언제"는 mysql의 예약어이기도합니다. SQL 쿼리에서 아포스트로피를 사용하여 이들을 모두 래핑해야합니다. –