【问题标题】:PHP/jQuery - pass value from jQuery Stepper to php pagePHP/jQuery - 将值从 jQuery Stepper 传递到 php 页面
【发布时间】:2015-07-03 08:40:54
【问题描述】:

两周后开始学习 PHP/jQuery - 提前道歉!

我正在使用 jQuery 插件“jquery.input-stepper.js”来获取输入值。

//Stepper input
<div class="input-stepper">
    <input class="order_size" type="text" min="0"  max="1000000">
</div>

//javascript
<script>
$('.input-stepper').inputStepper();
var order_size = $('.input-stepper').inputStepper();
</script>

然后单击按钮,我希望将值“order_size”传递给“Process.php”

<button id="Button_Up" type="button">Up</button>
<script>
    var order_size = $('.input-stepper').inputStepper();

    $(function (){
        $('#Button_Up').click(function(){
            var request = $.ajax({
                type: "POST",
                url: "Process.php",
                data: ({name:order_size})
            });
            request.done(function( msg ) {

                location.reload();
                return;

            });
            request.fail(function(jqXHR, textStatus) {
                alert( "Request failed: " + textStatus );
            });
        });
    });
</script>

此时我只是想验证“order_size”值是否已通过点击传递。我在“Process.php”上尝试如下:

<?php
$order_size = $_POST['name'];
echo $order_size; 
echo "<BR>"; 
?>

这就是我所在的地方:

如果我从按钮单击脚本中删除“数据:({name:order_size})”行,则按钮会触发并“发布”到 Process.php 页面(我可以告诉这一点,因为带有按钮的页面会重新加载) 但是,当包含“数据:({name:order_size})”行时,按钮不会触发(我可以告诉这一点,因为页面不会重新加载)。

我的重点是在 POST 函数中包含“order_size”,我不确定代码是否正确。

非常感谢任何指针。 :-)

资源:我已经阅读了以下有趣的 SO 问题以及 jQuery Stepper 插件的文档:

PHP + Jquery - pass value through ajax to php and check against variable

How to pass multiple variables to PHP with jQuery

https://github.com/FormstoneClassic/Stepper

【问题讨论】:

  • data: ({name:order_size}) 应该只是 data: {name:order_size},然后也许你应该有 order_size = $('.input-stepper').inputStepper();在点击功能中。我不确定最后一个,因为我不知道插件是如何工作的,只是想知道。
  • Tks @Djip 我已按照建议对“数据:{name:order_size}”进行了更改。另一方面,像这样? code $(function (){ $('#Button_Up').click(function(){ var order_size = $('.input-stepper').inputStepper(), var request = $.ajax({ type: “发布”,
  • 您在更改后是否再次尝试,但没有成功?
  • 是的,在只更改“{name:order_size}”后再次尝试。当按钮点击页面没有重新加载。
  • 不知道你用的是什么浏览器,但是你能不能尝试打开检查器并转到控制台,检查你是否收到任何 JS 错误,我猜你应该得到一些东西那么。

标签: php jquery ajax plugins


【解决方案1】:

我不认为这条线符合你的预期。

var order_size = $('.input-stepper').inputStepper();

如果您尝试将文本框的值传递给 Process.php,则应该使用 val()。

var order_size = $('#order_size').val();

另外,正如 cmets 所提到的,data: ({name:order_size}) 应该是 data: { name: order_size }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多