gpt4 book ai didi

php - 通过 jQuery 设置表单值的任何缺点

转载 作者:行者123 更新时间:2023-11-30 10:32:53 25 4
gpt4 key购买 nike

我有很多元素的表单,大多数是选择框、复选框、单选框。例如下面的选择框 chart[type] 我通过 php 设置它的值

<select name="chart[type]" id="chart_type" >                         
<option value="nps" <?php if ( $chart_data['chart']['type'] == 'nps' ) echo ' select="selected" '; ?> >NPS Barchart</option>
<option value="score" <?php if ( $chart_data['chart']['type'] == 'score' ) echo ' select="selected" '; ?>>Number/score</option>
<option value="top5" <?php if ( $chart_data['chart']['type'] == 'top5' ) echo ' select="selected" '; ?>>Top 5</option>
</select>

我尝试了使用 jQuery 设置值的代码

<select name="chart[type]" id="chart_type" >                         
<option value="nps" >NPS Barchart</option>
<option value="score">Number/score</option>
<option value="top5">Top 5</option>
</select>

<script>
$(function(){
$('[name="chart[type]"]').val(
'<?php echo $chart_data['chart']['type']; ?>'
);
});
</script>

我觉得代码更简洁了。我打算将所有表格代码重新填写更改为这种方式。我想知道使用 second 有什么缺点吗? .. 我的应用程序用于图表渲染,如果禁用 JavaScript,它将无法工作!

最佳答案

如果您正在使用 PHP 并且没有真正的理由使用 JavaScript 来打印 HTML,我会继续使用 PHP。像这样混合不是一个好主意,你真的应该考虑 AJAX。但是您可以使您的 PHP 代码更易于维护和动态:

<?php

$data = array(
'nps' => 'NPS Barchart',
'score' => 'Number/score',
'top5' => 'Top 5'
);

$options = '';

foreach ($data as $key => $value) {
$selected = $chart_data['chart']['type'] == $key ? 'selected' : '';
$options .= sprintf('<option class="%1$s" %2$s>%3$s</option>', $key, $selected, $value);
}

echo sprintf('<select name="chart[type]" id="chart_type">%s</select>', $options);

关于php - 通过 jQuery 设置表单值的任何缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15806508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com