javascript - 通过 AJAX/jQuery 将特定值从数据库写入 HTML

标签 javascript jquery html json ajax

第一次提问,希望大家多多指教:

网页代码:

<form id="inbound" action="javascript:validateinbound();">
    <input type="submit" value="Go!" id="inbound">
    <script>
        function validateinbound() {
            $('#inbound:input').each(function () {
                var iv = $(this).val();
                $('#response').hide();
                $('#mydiv').fadeIn(1200);
                $('#mydiv').delay(1200).fadeOut(600);
                $(function () {
                    $.ajax( {
                        url: 'validateinbound.php',
                        data: "variable="+iv,
                        dataType: 'json',
                        success: function(data) {
                            var response = JSON.stringify(data);
                                $('#response').delay(3600).fadeIn(600);
                                $('#response').append("<p>Answer: </p>"+response);
                        }
                    });
                });
            });
        };
    </script>
</form>

这将返回一个我想使用的字符串,如下所示:

回答:

 [{"id":"1","answer":"Pull  logging","question_id":"5","feature_id":"1","answer_id":"9"}]

理想情况下,我想做的只是选择网页的 maxmail_answer“键”(希望这些是正确的术语?)的“值”。目前只有一个值,但将来会有更多值,因此可以针对特定键解析此字符串并仅输出这些值。

视觉上我会看到:

答案:提取日志(然后是另一个答案:对于我提取的每个值)

第一次使用这个网站和这些语言,所以完全是菜鸟,希望得到一些指导。 谢谢!

最佳答案

您不需要将 JSON 响应字符串化,您可以使用对象表示法 . 获取所需键的值,如下所示:

function validateinbound() {
            $('#inbound:input').each(function () {
                var iv = $(this).val();
                $('#response').hide();
                $('#mydiv').fadeIn(1200);
                $('#mydiv').delay(1200).fadeOut(600);
                $(function () {
                    $.ajax( {
                        url: 'validateinbound.php',
                        data: "variable="+iv,
                        dataType: 'json',
                        success: function(data) {
         //var response = JSON.stringify(data); // no need for this line
         $('#response').delay(3600).fadeIn(600);
         // catch the answer here
         // your result returns within an array so you need to catch the first index
         $('#response').append("<p>Answer: </p>"+response[0].answer); 
                        }
                    });
                });
            });
        };

此外,id 是唯一的,您只能通过 id 选择器 # 访问单个元素,您不需要 .each

关于javascript - 通过 AJAX/jQuery 将特定值从数据库写入 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42197546/

相关文章:

javascript - 如何解决这个 "Uncaught ReferenceError: $ is not defined"

jquery - 单击链接时显示一个 div 而隐藏其他 div

html - 为什么一个元素两次具有相同的属性却具有不同的值?

javascript - 一旦当前范围定义了一个相同名称的变量,是否有任何方法可以访问外部范围的变量?

javascript - 在wordpress中联系表格7如何在正文中包含javascript src

javascript - 类型错误 : Cannot read property 'submit' of undefined Magento 'Add to cart'

jquery - 视差滚动背景上的水平滚动注册表格

javascript - jQuery使用范围输入更改setInterval的时间

javascript - 如何通过单击label标签将光标移动到输入文本框中?

javascript - 如何统计用户的点击URL?