diff --git a/frontend/src/components/Controls/Grid.vue b/frontend/src/components/Controls/Grid.vue
index 7f879bd2..c5b79e9c 100644
--- a/frontend/src/components/Controls/Grid.vue
+++ b/frontend/src/components/Controls/Grid.vue
@@ -327,7 +327,6 @@ const props = defineProps({
})
const triggerOnChange = inject('triggerOnChange')
-const fieldname = inject('fieldname')
const {
getGridViewSettings,
@@ -426,11 +425,7 @@ const deleteRows = () => {
function fieldChange(value, field, row) {
row[field.fieldname] = value
- triggerOnChange(field.fieldname, {
- fieldname: fieldname,
- dt: props.doctype,
- dn: row.name,
- })
+ triggerOnChange(field.fieldname, row)
}
diff --git a/frontend/src/components/Controls/GridRowModal.vue b/frontend/src/components/Controls/GridRowModal.vue
index 74e17db6..ef2bc854 100644
--- a/frontend/src/components/Controls/GridRowModal.vue
+++ b/frontend/src/components/Controls/GridRowModal.vue
@@ -23,7 +23,13 @@
-
+
diff --git a/frontend/src/components/FieldLayout/Field.vue b/frontend/src/components/FieldLayout/Field.vue
index 044d3494..5e52c3ba 100644
--- a/frontend/src/components/FieldLayout/Field.vue
+++ b/frontend/src/components/FieldLayout/Field.vue
@@ -213,16 +213,23 @@ const props = defineProps({
const data = inject('data')
const doctype = inject('doctype')
const preview = inject('preview')
+const isGridRow = inject('isGridRow')
const { getFormattedPercent, getFormattedFloat, getFormattedCurrency } =
getMeta(doctype)
const { getUser } = usersStore()
-const { triggerOnChange } = useDocument(doctype, data.value.name)
+let triggerOnChange
-provide('triggerOnChange', triggerOnChange)
-provide('fieldname', props.field.fieldname)
+if (!isGridRow) {
+ const { triggerOnChange: trigger } = useDocument(doctype, data.value.name)
+ triggerOnChange = trigger
+
+ provide('triggerOnChange', triggerOnChange)
+} else {
+ triggerOnChange = inject('triggerOnChange')
+}
const field = computed(() => {
let field = props.field
@@ -283,7 +290,11 @@ const getPlaceholder = (field) => {
function fieldChange(value, df) {
data.value[df.fieldname] = value
- triggerOnChange(df.fieldname)
+ if (isGridRow) {
+ triggerOnChange(df.fieldname, data.value)
+ } else {
+ triggerOnChange(df.fieldname)
+ }
}