POST 経由で送信するものを分類してみましょう。
{'info[]': [$("input[name='site_select_[]']:checked"), $(this).val()]}
これは次と同等です:
{
'info[]': [
$("input[name='site_select_[]']:checked"),
$(this).val()
]
}
したがって、単一のキーと値のペアの PHP 配列に変換されたオブジェクトを送信しています。
{
'key' : 'value'
}
鍵は
info[]
したがって、PHPは次のように評価されます$result = array("info[]", $value);
そして値は
[
$("input[name='site_select_[]']:checked"),
$(this).val()
]
これは 2 つの値の Javascript 配列で、最初の値は JQuery オブジェクトです。
$("input[name='site_select_[]']:checked")
this
そして2番目は、上記のものではないオブジェクトの「値」です。
$(this).val()
したがって、PHPでは次のようになります
$result = array("info[]", array(..Jquery object..., jqueryvalue);
ですから、Javascript と JQuery の基本について誤解していると思います。
このように機能しないことは明らかです。役に立たないデータを悪い方法で渡し、this
キーワードが文脈から外れています。信頼できる解決策については、他の回答を参照してください。