0
アップデート:IEではうまく動作しているようですが、Opera、FF、Chromeでは動作していないようです...jQuery Ajax Clickでエラーが返されますが、Document.Readyで正常に実行されますか?
javascriptを使用して、バインドを使用してsqliteにデータを簡単に書き込む方法を書いています。私のクリック機能は、私の単純なAjaxリクエストでは機能していません。私はここで混乱しています...いつものように、これはうまく動作します:
$("#showDB").click(function(){alert("CLICKED!")});
これはうまく動作します:
$(document).ready(function() {
$.ajax({
type: 'GET',
url: 'dv.xml',
dataType: 'xml',
success: parseXml,
error: function() {
alert('XML file not found.');
}
});
function parseXml(xml) {
//alert('XML file found.');
$(xml).find('Employee').each(function(){
var name = $(this).find('name').text();
var email = $(this).find('email').val();
var jobtitle = $(this).find('jobtitle').val();
var address = $(this).find('address').val();
var workphone = $(this).find('workphone').val();
var homephone = $(this).find('homephone').val();
var cellphone = $(this).find('cellphone').val();
var fax = $(this).find('fax').val();
var contractor = $(this).find('contractor').val();
alert(name);
});
}
});
しかし、私は私のAJAXリクエストを実行するためにクリックしたときに、それは私を返します。エラーアラート「XMLファイルが見つかりません」
$("#showDB").click(function(){
$.ajax({
type: 'GET',
url: 'dv.xml',
dataType: 'xml',
success: parseXml,
error: function() {
alert('XML file not found.');
}
});
function parseXml(xml) {
//alert('XML file found.');
$(xml).find('Employee').each(function(){
var name = $(this).find('name').text();
var email = $(this).find('email').val();
var jobtitle = $(this).find('jobtitle').val();
var address = $(this).find('address').val();
var workphone = $(this).find('workphone').val();
var homephone = $(this).find('homephone').val();
var cellphone = $(this).find('cellphone').val();
var fax = $(this).find('fax').val();
var contractor = $(this).find('contractor').val();
alert(name);
});
}
});
なぜクリックできないのですか?私は何が欠けていますか?
クリックコードの
ので、クリックの外に関数を置く? – jasonflaherty
「エラー」ハンドラの割り当てと同様に、ORをannon関数として作成します。どちらの方法も「良い」ですが、作成する関数が1つ以上の要素で使用される場合は、標準化して「そのインターフェイスを必要とする要素は何でも」利用できるようにする方が良いでしょう。 –
私はこれを行いました。しかし、役に立たなかった...私は#showDBボタンがフォームにあったので、フォームを提出しようとしていた問題を発見した。 – jasonflaherty