Я работал над зависимой формой полей выбора, используя PHP в качестве языка на стороне сервера и JQuery с Ajax. В этом поле выбора есть одно условие: предположим, что если в стране я выберу Соединенные Штаты Америки, то штаты этой конкретной страны должны отображаться в полях выбора штатов. Но я столкнулся с проблемой в этой части, я не смог получить состояния. Я новичок в Ajax и нет видео, которое могло бы помочь мне с моей проблемой.
```
HTML&PHP:
<tbody class="countrySel" >
<TR>
<TD class="srchItem" >Country<FONT color="red">*</FONT></TD>
<TD class="srchItem">
<select name="Country" id="Country" >
<option value=""></option>
<?php
global $wpdb;
$res = $wpdb->get_results("select * from wp_countries ORDER BY `sun_countryname` ASC" );
foreach($res as $resc){
?>
<option value="<?php echo $resc->sun_countryname; ?>"><?php echo $resc->sun_countryname; ?></option>
<?php }?>
</select></TD>
<td id="response">
<!--Response will be inserted here-->
</td>
</TR>
</tbody>
<tbody class="stateSel" >
<TR id="trState" style="display:none;">
<TD class="srchItem">State<FONT color="red">*</FONT></TD>
<TD class="srchItem">
<select name="State" id="State" >
<?php
global $wpdb;
echo $gc;
$res = $wpdb->get_results( 'SELECT * FROM wp_states WHERE sun_countryname = '."$gc".' ORDER BY sun_statename');
foreach($res as $resc){
?>
<option value="<?php echo $resc->sun_statename; ?>"><?php echo $resc->sun_statename; ?></option>
<?php }?>
</select></TD>
</TR>
</tbody>
$(document).ready(function () {
$('.countrySel').on('change','#Country', function() {
var country = this.value;
$.ajax({
type: 'post',
url: 'http://localhost/wordpress0/wp-content/themes/twentytwenty/ajax.php',
data: {value: country},
success: function(returnResponseData){
alert('Ajax return data is: ' + returnResponseData);
}
});
//alert(country);
if(country == 'United States of America')
{
$("#trState").show();
$("#trPostal").show();
}else if(country == 'Canada' || country == 'Mexico')
{
$("#trState").show();
$("#trPostal").hide();
}
else
{
$("#trState").hide();
}
});
});
$states = $wpdb->get_results( "SELECT * FROM wp_states WHERE sun_countryname = '$gc' ORDER BY sun_statename ASC");
print_r($states);
//mysql_fetch_array($states[2]);