1

私は私を困惑させてきた一種の奇妙な問題を抱えています。私は自作のコンテンツ管理システムを持っています.CRUD操作の大部分は、データベースに存在するフィールドを確認し、コンテンツを編集するためにユーザーフレンドリーな方法で出力し、そのコンテンツをデータベース。これらの操作は Chrome では完全に機能しますが、Internet Explorer と Safari では、送信ボタンを押すたびに、情報を処理せずにページが更新されているように見えます。

function createInsertForm($table, $formDesc, $carry, $carryUrl, $ext='', $formAppend='')
{
    // init globals
    global $cmsdir;
    global $pluginsdir;
    // put it together
    echo '<script type="text/javascript" src="' . $pluginsdir . 'ckfinder/ckfinder.js"></script><script type="text/javascript" src="' . $pluginsdir . 'ckeditor/ckeditor.js"></script>';
    echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="POST" class="form-horizontal" '.$formAppend.'>';
    createForm($table, 'insert', $formDesc);
    createFormButtons('yes', 'yes');
    if ($_POST['submit'] == 'Submit') {
        insertIntoDb($table, $carry, $carryUrl, $ext);
    }
    echo '</form>';
}

function createFormButtons($submit, $reset)
{
    echo '<div class="form-actions-min">';
    if ($submit == 'yes') {
        echo '<input name="submit" type="submit" id="submit" class="btn btn-success">';
    }
    if ($reset == 'yes') {
        echo '<input name="reset" type="reset" id="reset" class="btn btn-warning btn-space">';
    }
    echo '</div>';
}

ページ出力例:

<script type="text/javascript" src="../../neou_cms/plugins/ckfinder/ckfinder.js"></script>
<script type="text/javascript" src="../../neou_cms/plugins/ckeditor/ckeditor.js"></script>
    <form action="/neou_cms/external_forms/testimonial.php" method="POST" class="form-horizontal" >
        <div class="form-desc"></div>
        <h3>Input Fields</h3>
        <div class="control-group">
            <label class="control-label">Name</label>
            <div class="controls">
                <input type="text" name="name" value="" class="input-xlarge" id="tag_name" /></div>
        </div>
        <div class="control-group">
            <label class="control-label">Position</label>
            <div class="controls">
                <input type="text" name="position" value="" class="input-xlarge" id="tag_position" />
            </div>
        </div>
        <div class="control-group">
            <label class="control-label">Company</label>
            <div class="controls">
                <input type="text" name="company" value="" class="input-xlarge" id="tag_company" />
            </div>
        </div>
        <h3>Content Fields</h3>
        <div class="control-group">
            <label class="control-label">Quote</label>
            <div class="controls">
                <textarea name="quote" id="quote" rows="8" style="width:305px;"> </textarea>
            </div>
        </div>
        <input type="hidden" name="id" value="175013988" />
        <div class="form-actions-min"><input name="submit" type="submit" id="submit" class="btn btn-success">
            <input name="reset" type="reset" id="reset" class="btn btn-warning btn-space">
        </div>
    </form>
</div>

より具体的に、より良い概要を提供できればと思いますが、それには時間がかかります! 誰かがこのような問題を経験したことがありますか、またはおそらく私の簡単なコードから何がうまくいかないのか知っていますか?

4

1 に答える 1

9

あなたが抱えている問題は、ボタンに avalueを指定していないことです。<input type="submit">値を指定しないため、ユーザー エージェントはデフォルト ラベルとして選択した値を自由に使用できます。Chrome では「送信」です。IE と Safari では、「Submit Query」です。

この問題を回避する方法は、要素valueに属性を追加することです。input

<input type="submit" id="submit" value="Submit">
于 2013-02-22T04:03:34.587 に答える