Thanks for the quick reply - I have the form tag in the default.php file, the $this->loadTemplate('params') loads between the <form></form> tags. The fields displayed in the default.php file work fine, the data shows up and changes are saved properly. default.php looks like this:
JHtml::_('behavior.tooltip');
JHtml::_('behavior.formvalidation');
JHtml::_('behavior.keepalive');
?>
<form action="<?php echo JRoute::_('index.php?option=com_mycomponent&layout=edit&id='.(int) $this->item->id); ?>" method="post" name="adminForm" id="user-form" class="form-validate">
<div class="width-60 fltlft">
<fieldset class="adminform">
<legend><?php echo JText::_('COM_MYCOMPONENT_NEW_RECORD'); ?></legend>
<ul class="adminformlist">
<li>
<?php echo $this->form->getLabel('fielda'); ?>
<?php echo $this->form->getInput('fielda'); ?>
</li>
<li>
<?php echo $this->form->getLabel('fieldb'); ?>
<?php echo $this->form->getInput('fieldb'); ?>
</li>
</ul>
</fieldset>
</div>
<div class="width-40 fltrt">
<?php
echo JHtml::_('sliders.start','user-sliders-'.$this->item->id, array('useCookie' => 1));
?>
</div>
<div class="clr"></div>
<?php echo JHtml::_('sliders.end'); ?>
<?php } ?>
<input type="hidden" name="task" value="" />
<?php echo JHtml::_('form.token'); ?>
</form>