小编Jos*_*osh的帖子

将多维表单数据序列化为JSON对象数组以与application/json一起使用

我正在构建一个Laravel应用程序.在后端,$controller->wantsJson()方法是TRUE请求的内容类型application/json.所以,为了满足这个要求,我的jQuery AJAX调用就是这样.

jQuery.ajax({
    type:        "POST",
    method:      "PUT",
    url:         $form.attr('action'),
    data:        $form.serialize(),
    dataType:    "json",
    contentType: "application/json; charset=utf-8"
})
Run Code Online (Sandbox Code Playgroud)

这正确地触发了wantsJson()我需要的响应.问题是jQuery无法application/json正确提供POST数据.它尝试将其写为查询字符串,当它接收到该内容类型时,它不适用于PHP后端.

为了满足这一点,我需要将JavaScript对象数组字符串化到data字段中.

JSON.stringify(dataObj)
Run Code Online (Sandbox Code Playgroud)

所以现在的问题是,我没有将多维表单转换为对象数组的简洁方法.如果我只是尝试转换输出$.serializeArray(),我得到这个,这是后端无法解释的.

{
    'something' : 1,
    'field[foo]' : 2,
    'field[bar][]' : "a",
    'field[bar][]' : "b",
    'field[bar][]' : "c",
}
Run Code Online (Sandbox Code Playgroud)

那当然不行.我需要某种可以转换此表单的RegEx解析器...

<input name="something" value="1" />
<input name="field[foo]" value="2" />
<input name="field[bar][]" value="a" />
<input name="field[bar][]" value="b" />
<input name="field[bar][]" value="c" />
Run Code Online (Sandbox Code Playgroud)

进......

{
    'something' : 1,
    'field'     : …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery json laravel

5
推荐指数
1
解决办法
6315
查看次数

不支持所有类型时的HTML5视频后备

在HTML5规范中,建议您将后备素材放入<video>不支持它的旧版浏览器的代码中。

<video width="400" controls>
    <source src="mov_bbb.mp4" type="video/mp4">
    <source src="mov_bbb.ogg" type="video/ogg">
    Your browser does not support HTML5 video.
</video>
Run Code Online (Sandbox Code Playgroud)

但是,当不支持所有源类型时,我找不到任何可用于回退的东西。例如,我的Chromium浏览器无法播放video/mp4,但可以播放video/ogg。因此,我希望这会呈现后备文本。

<video width="400" controls>
    <source src="mov_bbb.mp4" type="video/mp4">
    Your browser does not support HTML5 video.
</video>
Run Code Online (Sandbox Code Playgroud)

相反,我只是得到了一个没有任何内容的视频播放器,因为它无法加载mp4文件。

没有可用的视频源时,是否有办法在HTML 5视频中进行回退?我知道我尝试的回退仅适用于旧版浏览器,但仍然需要回退,因为没有可用的源。

html5 html5-video

4
推荐指数
1
解决办法
3817
查看次数

我可以向Stripe收取可变金额作为订阅吗?

我想使用Stripe API每月向用户收取他们指定的金额.看来Stripe不允许网站创建订阅,而无需先手动设置计划,限制人们可以自行计费到预先指定的金额.

做这个的最好方式是什么?

php billing stripe-payments

2
推荐指数
1
解决办法
2541
查看次数

标签 统计

ajax ×1

billing ×1

html5 ×1

html5-video ×1

javascript ×1

jquery ×1

json ×1

laravel ×1

php ×1

stripe-payments ×1