2

私の登録ページの画像では、左側のフォームの間に垂直セパレータを配置して、右側に別のフォームを登録用に記入したいと考えていますが、その方法がわかりません。 http://puu.sh/1FJIA また、質問の 2 番目の部分はドロップダウン メニューに関するものですが、#_usergroups 以外のオプションを追加して、選択するとドロップダウン メニューがテキスト ボックスに変更されるようにするにはどうすればよいですか? 以下は、xml に使用されるコーディングです。

    <?xml version="1.0" encoding="UTF-8"?>
<form>
<fieldset name="default"
    label="COM_USERS_REGISTRATION_DEFAULT_LABEL"
>

    <field name="spacer" type="spacer" class="text"
            label="COM_USERS_REGISTER_REQUIRED"
        />

    <field name="name" type="text"
        description="COM_USERS_REGISTER_NAME_DESC"
        filter="string"
        label="COM_USERS_REGISTER_NAME_LABEL"
        message="COM_USERS_REGISTER_NAME_MESSAGE"
        required="true"
        size="30"
    />

    <field name="username" type="text"
        class="validate-username"
        description="COM_USERS_DESIRED_USERNAME"
        filter="username"
        label="COM_USERS_REGISTER_USERNAME_LABEL"
        message="COM_USERS_REGISTER_USERNAME_MESSAGE"
        required="true"
        size="30"
        validate="username"
    />

    <field name="password1" type="password"
        autocomplete="off"
        class="validate-password"
        description="COM_USERS_DESIRED_PASSWORD"
        field="password2"
        filter="raw"
        label="COM_USERS_REGISTER_PASSWORD1_LABEL"
        message="COM_USERS_REGISTER_PASSWORD1_MESSAGE"
        required="true"
        size="30"
        validate="equals"
    />

    <field name="password2" type="password"
        autocomplete="off"
        class="validate-password"
        description="COM_USERS_REGISTER_PASSWORD2_DESC"
        filter="raw"
        label="COM_USERS_REGISTER_PASSWORD2_LABEL"
        message="COM_USERS_REGISTER_PASSWORD2_MESSAGE"
        required="true"
        size="30"
    />

    <field name="email1" type="email"
        description="COM_USERS_REGISTER_EMAIL1_DESC"
        field="id"
        filter="string"
        label="COM_USERS_REGISTER_EMAIL1_LABEL"
        message="COM_USERS_REGISTER_EMAIL1_MESSAGE"
        required="true"
        size="30"
        unique="true"
        validate="email"
    />

    <field name="email2" type="email"
        description="COM_USERS_REGISTER_EMAIL2_DESC"
        field="email1"
        filter="string"
        label="COM_USERS_REGISTER_EMAIL2_LABEL"
        message="COM_USERS_REGISTER_EMAIL2_MESSAGE"
        required="true"
        size="30"
        validate="equals"
    />

    <field name="title" type="sql" 
        default="-None Listed-"
        label="Select your University" 
        description="Select the University you are currently attending, if                                                   

it's not on the list then create it below"
        query="SELECT title FROM #__usergroups WHERE ID > '8    ' "
        required="true"
    />

    <field
        name="captcha"
        type="captcha"
        label="COM_USERS_CAPTCHA_LABEL"
        description="COM_USERS_CAPTCHA_DESC"
        validate="captcha"
    />

</fieldset>
</form> 
4

1 に答える 1

0

1. 縦区切り:

ハックを使用できます。つまり、マークアップを出力するいくつかのフィールドを作成します。

ここでのアイデアは、余分なものを挿入することです

<div style='width:50%'>

最初のフィールドの前。次に、

</div><div style='width:49%;border-left:1px dashed black'>

セパレーターが必要な場所、最後に a 。

3 つの新しいスペーサー フィールドを作成します。

適切にエスケープされた html を直接挿入することもできます。

<field type="spacer" name="splitterinit" label="&lt;div&gt;" />

または、html を言語定数として言語ファイルに入れます。

SPLITTER_MID="</div><div style='width:49%;border-left:1px dashed black'>"

.xml で定数を使用するだけです。

<field type="spacer" name="splittermid" label="SPLITTER_MID" />

2. 追加のテキスト オプション:

  • 簡単: 下にテキスト フィールドを追加して、ユーザーが入力できるようにします。
  • より難しい: カスタム要素を作成します。そこに php を記述して、必要に応じて作成できます。

3. 一言アドバイス

Chronoforms には、必要なすべてのフィールドを定義できるユーザー登録オーバーライドがあり、JED で同様の拡張機能をさらに見つけることができます。また、すべてのコミュニティ ソリューションにはカスタム プロファイルがあります。

于 2013-01-25T22:42:29.893 に答える