-1

我怎样才能取值:

<span name="MinPrice" class="irs-from">0</span>
<span name="MaxPrice" class="irs-to">0</span>

并将它们分配给 PHP 变量:

$MinPrice
$MaxPrice

这是我的 JQuery 代码:

   var base_html =
    '<span class="irs">' +
    '<span class="irs-line" tabindex="-1"><span class="irs-line-left"></span><span class="irs-line-mid"></span><span class="irs-line-right"></span></span>' +
    '<span class="irs-min">0</span><span class="irs-max">1</span>' +
    '<span name="MinPrice" class="irs-from">0</span><span name="MaxPrice" class="irs-to">0</span><span class="irs-single">0</span>' +
    '</span>' +
    '<span class="irs-grid"></span>' +
    '<span class="irs-bar"></span>';

我使用形式:

<form action="<?php echo languageURL(0, ''.$g['url'].'products.html'); ?>" method="get">

<div class="wrapper" style=" padding:20px;">
  <div class="range-slider">
      <input type="text" class="js-range-slider" value="" />
  </div>
</div>

    <input type="submit" class="btn-primary goo" value="Търсене" />
</form>
4

2 回答 2

0

正如评论中已经提到的

  1. Span 没有它们有 innerHTML 的值。
  2. 您将需要通过 ajax 来完成(如果您想使用 jQuery 来完成)。

现在要从base_html变量中获取值,您首先需要解析 HTML 字符串,然后从中取出值,即

var min = $.parseHTML( base_html).find(".irs-from").text();
var max = $.parseHTML( base_html).find(".irs-to").text();
$.ajax({url: "value_set.php?min="+min+"max="+max, success: function(result){
   //do whatever you like to do here
  }});
于 2018-12-19T12:57:36.047 回答
0

您可以使用 AJAX 将您的值分配给 PHP 变量。您可以在 jQuery 中像这样发送表单数据:

function sendData()
{
    $.ajax({
        type: "POST",
        url: 'ajax.php',
        data: {$("#formID").serialize(), MinPrice: $('#minSpan span').html(), MaxPrice: $('#maxSpan span').html()},
        dataType: "html",
        success: function(html)
        {
            // do something ...
        }
    });
}

在这种情况下,数据是通过 POST 发送的,并且您的表单需要一个 ID(例如 id="formID")。

更新:现在还发送了跨度的值,这里的 ID 为 id="minSpan" 和 id="maxSpan"。在 ajax.php 中,您可以读取 POST 值,尝试查看所有可用值:

var_dump($_POST);
于 2018-12-19T12:50:58.410 回答