mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
An onInput event is added for fields in forms that gets triggered everytime an input is detected in the field
(cherry picked from commit a3103cf568
)
Co-authored-by: Roche Christopher <rocheinside@gmail.com>
This commit is contained in:
parent
cc4535748e
commit
68e2f08fa5
@ -298,7 +298,8 @@ function constructDeleteForm(fields, options) {
|
|||||||
* - closeText: Text for the "close" button
|
* - closeText: Text for the "close" button
|
||||||
* - fields: list of fields to display, with the following options
|
* - fields: list of fields to display, with the following options
|
||||||
* - filters: API query filters
|
* - filters: API query filters
|
||||||
* - onEdit: callback or array of callbacks which get fired when field is edited
|
* - onEdit: callback or array of callbacks which get fired when field is edited - does not get triggered until the field loses focus, ref: https://api.jquery.com/change/
|
||||||
|
* - onInput: callback or array of callbacks which get fired when an input is detected in the field
|
||||||
* - secondary: Define a secondary modal form for this field
|
* - secondary: Define a secondary modal form for this field
|
||||||
* - label: Specify custom label
|
* - label: Specify custom label
|
||||||
* - help_text: Specify custom help_text
|
* - help_text: Specify custom help_text
|
||||||
@ -1642,6 +1643,23 @@ function addFieldCallback(name, field, options) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(field.onInput){
|
||||||
|
|
||||||
|
el.on('input', function(){
|
||||||
|
var value = getFormFieldValue(name, field, options);
|
||||||
|
let onInputHandlers = field.onInput;
|
||||||
|
|
||||||
|
if (!Array.isArray(onInputHandlers)) {
|
||||||
|
onInputHandlers = [onInputHandlers];
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const onInput of onInputHandlers) {
|
||||||
|
onInput(value, name, field, options);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
// attach field callback for nested fields
|
// attach field callback for nested fields
|
||||||
if(field.type === "nested object") {
|
if(field.type === "nested object") {
|
||||||
for (const [c_name, c_field] of Object.entries(field.children)) {
|
for (const [c_name, c_field] of Object.entries(field.children)) {
|
||||||
|
@ -343,7 +343,7 @@ function poLineItemFields(options={}) {
|
|||||||
reference: {},
|
reference: {},
|
||||||
purchase_price: {
|
purchase_price: {
|
||||||
icon: 'fa-dollar-sign',
|
icon: 'fa-dollar-sign',
|
||||||
onEdit: function(value, name, field, opts) {
|
onInput: function(value, name, field, opts) {
|
||||||
updateFieldValue('auto_pricing', value === '', {}, opts);
|
updateFieldValue('auto_pricing', value === '', {}, opts);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user