通常我会通过jQuery
中的eq()函数指定所需元素。
现在我需要在两个for循环中指定一个表行,但我无法访问$i
和$l
。
这是代码。
$content_count = count($content);
$languages_count = count($languages);
for ($i = 0; $i < $content_count; $i++) {
for ($l = 0; $l < $languages_count; $l++) {
echo '<tr>';
echo ' <td class="dataTableConfig col-left" style="border-right:1px solid #a3a3a3;">' . $lang_img . TEXT_TITLE . '</td>';
echo ' <td class="dataTableConfig col-single-right">';
echo xtc_draw_input_field('content_title[' . $i . '][' . $languages[$l]['id'] . ']', ((isset($content_lang['content_title'])) ? $content_lang['content_title'] : ''), 'size="60"');
echo ' </td>';
echo '</tr>';
}
}
我尝试了这段代码
echo '<tr>';
echo ' <td class="dataTableConfig col-left" style="border-right:1px solid #a3a3a3;">' . $lang_img . TEXT_MASK_ALIAS . '</td>';
echo ' <td class="dataTableConfig col-single-right">';
echo xtc_draw_input_field('mask_alias[' . $i . ']['. $languages[$l]['id'] . ']', ((isset($content_lang['mask_alias'])) ? $content_lang['mask_alias'] : ''), 'size="60"');
echo ' </td>';
echo '</tr>';
?>
<script>
$(document).ready(function() {
var content = <?php echo $content_count; ?>;
var languages = <?php echo count($languages); ?>;
for (var i = 0; i < content.length; i++) {
for (var l = 0; l < languages.length; l++) {
$("[name^='mask_alias']").closest("tr").detach().insertAfter($("[name=^'content_title']").closest("tr"));
}
}
});
</script>
但它不在正确的地方,$ i和$ l的数量是错误的。
答案 0 :(得分:0)
我找到了使用此代码的解决方案
<script>
$(document).ready(function() {
var content = <?php echo $content_count; ?>;
var languages = <?php echo json_encode($languages); ?>;
var row = '';
for (var i = 0; i < content; i++) {
$.each(languages, function(key, value) {
row = '<tr>';
row += ' <td class="dataTableConfig col-left" style="border-right:1px solid #a3a3a3;">';
row += ' <div style="float:left;margin-right:5px;">';
row += ' <img src="/lang/' + value['directory'] + '/admin/images/' + value['image'] + '" alt="' + value['name'] + '" title="' + value['name'] + '" style="border:0;">';
row += ' </div>';
row += ' <?php echo TEXT_MASK_ALIAS; ?>';
row += ' </td>';
row += ' <td class="dataTableConfig col-single-right">';
row += ' <input type="text" name="mask_alias[' + i + '][' + value['id'] + ']" value="<?php echo (isset($content_lang['mask_alias']) ? $content_lang['mask_alias'] : ''); ?>" size="60">';
row += ' </td>';
row += '</tr>';
$('[name="content_title[' + i + '][' + value['id'] + ']').closest('tr').after(row);
});
}
});
</script>