feat: 所有参数字段改为文本类型,长文本字段标记input_style
This commit is contained in:
@@ -1904,7 +1904,7 @@
|
||||
if (!cat) return '';
|
||||
|
||||
const fields = cat.fields || [];
|
||||
const fixedFields = ['id', 'subcategory_id', 'images', 'visible', 'created_at', 'updated_at', 'raw_text', 'is_pinned', 'views'];
|
||||
const fixedFields = ['id', 'subcategory_id', 'images', 'visible', 'created_at', 'updated_at', 'raw_text', 'is_pinned', 'views', 'parse_sources', 'product_images'];
|
||||
|
||||
// 合并子类别额外字段
|
||||
let allFields = fields;
|
||||
@@ -1922,22 +1922,14 @@
|
||||
const required = field.required ? 'required' : '';
|
||||
const requiredMark = field.required ? '<span class="text-red-500">*</span>' : '';
|
||||
const desc = field.description ? `<p class="text-xs text-gray-400 mt-1">${field.description}</p>` : '';
|
||||
const inputStyle = field.input_style || 'normal';
|
||||
|
||||
let inputHtml = '';
|
||||
if (field.type === 'boolean') {
|
||||
inputHtml = `<select name="${field.key}" class="w-full px-3 py-2 border rounded-lg" ${required}>
|
||||
<option value="true" ${value === true ? 'selected' : ''}>是</option>
|
||||
<option value="false" ${value === false || !value ? 'selected' : ''}>否</option>
|
||||
</select>`;
|
||||
} else if (field.type === 'number') {
|
||||
inputHtml = `<input type="number" name="${field.key}" value="${value}" step="any" class="w-full px-3 py-2 border rounded-lg" ${required}>`;
|
||||
} else if (field.type === 'date') {
|
||||
inputHtml = `<input type="date" name="${field.key}" value="${value}" class="w-full px-3 py-2 border rounded-lg" ${required}>`;
|
||||
} else if (field.type === 'json') {
|
||||
inputHtml = `<textarea name="${field.key}" rows="3" class="w-full px-3 py-2 border rounded-lg font-mono text-sm" ${required}>${typeof value === 'object' ? JSON.stringify(value, null, 2) : value}</textarea>`;
|
||||
} else if (field.type === 'url') {
|
||||
inputHtml = `<input type="url" name="${field.key}" value="${value}" class="w-full px-3 py-2 border rounded-lg" ${required}>`;
|
||||
if (inputStyle === 'long') {
|
||||
// 长文本用 textarea
|
||||
inputHtml = `<textarea name="${field.key}" rows="4" class="w-full px-3 py-2 border rounded-lg" ${required}>${value}</textarea>`;
|
||||
} else {
|
||||
// 普通文本用 input
|
||||
inputHtml = `<input type="text" name="${field.key}" value="${value}" class="w-full px-3 py-2 border rounded-lg" ${required}>`;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user