javascript - 如何使在控件中输入的值出现在查询字符串中的单引号内

标签 javascript php html

 <script>
  function myFunction() {
    var query = '?';
    var str = $( "form" ).serialize();
    $( "#results" ).text( query += str );
    
  }
  $( "input[type='sel'], input[type='text']" ).on( "submit", myFunction );
  $( "select" ).on( "submit", myFunction );
   myFunction();
  
</script>
echo'<input  id="submit" type="submit" value="SUBMIT" class="btn btn-success"  name="submit" onclick="myFunction()"/> ';
echo '<p id="results">&nbsp;</p></form>';
这是用于为控件生成查询字符串的 javascript,所以我使用 id=submit 和 event onclick=myFunction

如何使这个工作 onclick 事件和查询字符串应该打印在

标签上以及插入代码是什么请让我知道答案

例如:?gender='Male'&city='dwd'

最佳答案

要将查询字符串保存在数据库中,您不需要在 javascript 中执行此操作,请参见以下示例:

测试.php

<form method="post">
    <label> Name
        <input name="query[name]" type="text">
    </label>

    <label> Email
        <input name="query[email]" type="text">
    </label>

    <label> Phone
        <input name="query[phone]" type="text">
    </label>

    <button type="submit">Submit</button>
</form>

<?php

if ($_POST && isset($_POST['query'])) {
    $query = '?'. http_build_query($_POST['query']);

    //save the value of query in the database
    echo $query;
}

以上示例提交数组中所有输入的值并使用 http_build_query 构建查询

并使用ajax:

测试.php

<script type="text/javascript" src="/js/jquery.min.js"></script>
<form method="post">
    <label> Name
        <input name="query[name]" type="text">
    </label>

    <label> Email
        <input name="query[email]" type="text">
    </label>

    <label> Phone
        <input name="query[phone]" type="text">
    </label>
    <button type="submit" >Submit</button>
</form>
<script>
    $('form').on('submit',function(e){
        e.preventDefault();
        e.stopPropagation();

        $.ajax('/ajax.php', {
            method: 'POST',
            data: $('form').serialize()
        })
    });
</script>

ajax.php

<?php
if ($_POST && isset($_POST['query'])) {
    $query = '?'.http_build_query($_POST['query']);

    //save the value of query in the database
    echo $query;
}

关于javascript - 如何使在控件中输入的值出现在查询字符串中的单引号内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43997592/

相关文章:

html - 表格中的文本换行,填充剩余宽度中间列

javascript - Ajax/Javascript 删除确认文本而不使用对话框

javascript - 结合正则表达式模式 javascript

javascript - 在 Flux 中处理同一组件的多个实例

PHP Paypal IPN 处理不起作用

javascript - 如何避免使用简单的 html 表单提交进行重定向?

python - 解析带有 <br> 标签的 html (Python)

javascript - 如何在 Firebase 上托管的 React 元素中提供 Assets 路径?

javascript - 有没有办法改变http请求、响应位置?

html - 防止在 Zurb Foundation 中调整网格大小