簡體   English   中英

Joomla 2.5 XML字段-表單提交后存儲值

[英]Joomla 2.5 xml fields - store values after form submit

我有一個典型的XML文件,其中包含許多示例字段

<field
type="custom"
name="city"
id="city"
label="City"
size="40"/>

在視圖中,我顯示此字段-一切都很好。 此外,我在此字段上使用狀態過濾。 模型populateState():

$filter = $app->input->get('city');
$this->setState('filter.city', $filter);

問題在於,表單提交后(表單具有get方法)字段沒有值。 我無法在字段value寫入$this->getState('city')因為它是xml文件。 也許任何人都有解決方案...我在考慮JS,但主要是我想擁有一個PHP解決方案。

問題解決了! 這是解決方案:1.在jform數組中具有所有字段名稱。 如果您在xml中使用表格,它會自動生成。 2.加載表單數據時,將第二個參數發送為true: $model->getForm('formName', true)因為第二個參數是$loadData 通過此選項,Joomla將加載表單數據。 3.您具有從loadFormData函數加載的數據:

protected function loadFormData() {
        $data = JFactory::getApplication()->getUserStateFromRequest('jform', 'jform');
        if (empty($data)) {
            $data = $this->getItem();
        }

        return $data;
    }

就這樣。

我不清楚您要問什么,但是如果您使用的是標准JForm並將其插入類似以下內容,則不是100%清楚:

echo $this->form->getInput('articletext');

您表單中的字段名稱可能不是city ,更可能是這樣的:

`jform[articletext]`

如果您可以添加更多的XML文件,那么我們可以看到分組等以及用於顯示表單的php ,我們可能可以准確地將其固定下來,如果您告訴我們所使用的Joomla版本,也將有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM