質問する
204 次
2 に答える
0
質問は曖昧で複雑です。与えられたものに基づいて、いくつかの仮定を立ててみましょう。
jquery appends me a select after loading the option list of categories
次のようなことをしているとしましょう。
$.ajax({...
success: function (data) {
(make a select box)
}
})
そしてそれMy php script returns the option list OR false
。
data
私の質問は、JavaScriptが true と評価されるかどうかをチェックしないのはなぜですか?
$.ajax({...
success: function (data) {
if (data) { // if data contains anything besides false
(make a select box)
} else {
(don't make a select box)
}
}
})
編集
エラー、空のドロップダウン ボックスを処理します。
if($lWert3 !== '') {
$zuordnung3 = $('<select id="catLev4" name="lev4" class="levelSelect"></select>').appendTo('#categories');
$zuordnung3.load('rem/remoteSearchLevelCat.php', {cat:$lWert3, lang:$lang}, function () {
if ($zuordnung3.find('option').length <= 0) {
$zuordnung3.remove();
}
});
}
于 2013-08-19T17:15:32.537 に答える
0
例がないと問題を理解するのは難しいですが、
データベースにレベル 4 カテゴリが見つからない場合、私の php スクリプトはオプション リストまたは false を返します。
おそらく私は誤解しましたが、php が返すデータに「オプション」文字列が含まれているかどうかを確認する必要があります。(何かまたはfalseを返すと思います)。jQuery の .get-method を使用した例を次に示します。
$.get('/url/to/the/php', function(leveldata) {
if (leveldata.indexOf('option') > -1) {
// append to the fourth select
}
});
編集:
jquery の load-method を使用します。select 要素を作成する前にデータをフェッチするか、コンテンツが空の場合は select を削除してください。
これを試して
...
$zuordnung3 = $('<select id="catLev4" name="lev4" class="levelSelect"></select>').appendTo('#categories');
$zuordnung3.load('rem/remoteSearchLevelCat.php', {cat:$lWert3, lang:$lang});
if ($('#catLev4 option').size == 0) {
$('#catLev4').remove();
}
またはこれ
$zuordnung3.load('rem/remoteSearchLevelCat.php', {cat:$lWert3, lang:$lang}, function(responseText, textStatus, XMLHttpReques) {
if(responseText.length == 0) {
$('#catLev4').remove();
}
});
于 2013-08-19T17:15:47.160 に答える