【问题标题】:Form doesnot post data edited from jQuery表单不发布从 jQuery 编辑的数据
【发布时间】:2015-06-13 19:23:53
【问题描述】:

我有一个非常简单的应用程序,其中包括一个表单和 2 个按钮。'

说明

当用户点击第一个按钮时,网站会检查他是否有折扣券,如果有则根据优惠券计算折扣金额。这很简单。如果用户不输入代码,则进程会正常继续。

问题

使用我发布的数据,我还发布了优惠券字段。如果用户输入了有效的优惠券,那么我使用 jQuery 禁用优惠券输入,并且我还禁用了金额字段。这会导致一个问题,使使用 jQuery 编辑的字段“不可发布”。

例如,如果您不输入优惠券代码,则该字段保持解锁状态并且 jQuery 永远不会对其进行编辑。

代码

<form class="form-horizontal row-fluid" action="<?= base_url() . 'transactions/new' ?>" method="POST" id="form" name="form">



                <div class="control-group">
                    <div class="alert js_hidden" id="psc_val_warning">
                        Παρακαλούμε εισάγεται το ποσό που αντιστοιχεί στα PINS
                    </div>
                    <label class="control-label" for="basicinput">Συνολικό ποσό</label>
                    <div class="controls">
                        <div class="input-append">
                            <input type="number" name="psc_val" class="span8" id="psc_val" required><span class="add-on">&euro;</span>
                        </div>
                    </div>
                </div>



                <div class="control-group">
                    <div class="alert alert-error js_hidden" id="coupon_error">
                        Το κουπόνι δεν είναι έγκυρο!
                    </div>
                    <div class="alert alert-success js_hidden" id="coupon_success">
                        Το κουπόνι εξαργυρώθηκε με επιτυχία!
                    </div>
                    <label class="control-label" for="basicinput">Κουπόνι</label>
                    <div class="controls">
                        <div class="input-prepend">
                            <span class="add-on">#</span><input class="span8" id="coupon_code" type="text" name="coupon_code" maxlength="11">       
                        </div>
                    </div>
                </div>

                <hr>

                <div class="control-group">
                    <label class="control-label" for="basicinput">Σημειώσεις</label>
                    <div class="controls">
                        <textarea class="span8" rows="5" name="notes"></textarea>
                    </div>
                </div>

                <hr>
                <center>    
                    <button class="btn btn-large btn-success js_hidden" id="proceed_btn" onclick="submit_form()">Proceed</button>
                </center>
            </form>
            <center>
                <a class="btn btn-large btn-info" onclick="validate()" id="check_btn">Check</a>
            </center>

JS部分

function display_proceed_btn() {

$("#psc_val").prop('disabled', true);
$('#check_btn').fadeOut( "slow", function() {
    $('#proceed_btn').fadeIn( "slow", function() {

    });
});

}

function submit_form() {
   $('#form ').submit();
}

另一部分使用优惠券并使用 API 查看折扣值,但它的作用几乎相同$("#coupon_code").prop('disabled', true);

【问题讨论】:

标签: javascript jquery


【解决方案1】:

禁用输入字段后,将优惠券代码添加到隐藏字段。 请记住实际重新计算服务器上的最终金额,并且不要信任任何用户可编辑字段;-)

【讨论】:

  • 感谢工作的人。我没有为前端折扣计算保留任何东西。这只是为了用户体验。用户提交堡垒后,它会获取优惠券并再次计算服务器上的折扣:)
猜你喜欢
  • 1970-01-01
  • 2016-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-26
  • 1970-01-01
  • 2016-08-11
  • 2016-04-24
相关资源
最近更新 更多