単純な問題。 jQueryセレクター内でも連結したいjs変数があります。ただし、機能していません。エラーも表示されません。なにが問題ですか?変数をjQueryセレクターのテキストに正しく連結するにはどうすればよいですか。
<div id="part2"></div>
<script type="text/javascript" >
$('#button').click(function ()
{
var text = $('#text').val();
var number = 2;
$.post('ajaxskeleton.php', {
red: text
},
function(){
$('#part' + number).html(text);
});
});
</script>
の構文には何も問題はありません
_$('#part' + number).html(text);
_
jQueryは、パラメーターとしてString(通常CSSセレクター)または DOM Node を受け入れて、 jQueryオブジェクト 。
あなたの場合、文字列を$()
に渡す必要があります
_$(<a string>)
_
変数number
およびtext
にアクセスできることを確認してください。
テストするには:
_function(){
alert(number + ":" + text);//or use console.log(number + ":" + text)
$('#part' + number).html(text);
});
_
アクセスできない場合は、関数にパラメーターとして渡し、$。getの通常のパラメーターを含めて、その後にカスタムパラメーターを渡す必要があります。
連結構文は正しいです。
ほとんどの場合、コールバック関数は呼び出されていません。その関数にalert()
、console.log()
、またはdebugger
の行を挿入することでテストできます。
呼び出されていない場合は、おそらくAJAXエラーです。.fail()
の後に$.post()
ハンドラーをチェーンして、エラーの内容を確認してください。
$.post('ajaxskeleton.php', {
red: text
}, function(){
$('#part' + number).html(text);
}).fail(function(jqXHR, textStatus, errorThrown) {
console.log(arguments);
});