diff --git a/app/client/lib/tableUtil.js b/app/client/lib/tableUtil.js index 20bd864f..30d13f66 100644 --- a/app/client/lib/tableUtil.js +++ b/app/client/lib/tableUtil.js @@ -107,7 +107,7 @@ function makePasteHtml(tableData, selection, includeColHeaders) { let rawValue = col.rawGetter(rowId); let fmtValue = col.fmtGetter(rowId); let dataOptions = {}; - if (rawValue != fmtValue) { + if (rawValue !== fmtValue) { dataOptions['data-grist-raw-value'] = JSON.stringify(rawValue); } return dom('td', dataOptions, fmtValue); diff --git a/app/client/widgets/ReferenceEditor.ts b/app/client/widgets/ReferenceEditor.ts index b56ac2bc..abd711a5 100644 --- a/app/client/widgets/ReferenceEditor.ts +++ b/app/client/widgets/ReferenceEditor.ts @@ -128,7 +128,12 @@ export class ReferenceEditor extends NTextEditor { if (matches.length > 0) { return matches[0].value; } else { - return this.textInput.value; + const value = this.textInput.value; + if (this._visibleCol === 'id') { + // If the value is a valid number (non-NaN), save as a numeric rowId; else as text. + return +value || value; + } + return value; } }