繁体   English   中英

如何使用多个选择选项值更新数据库:Wordpress

[英]How to update db with the multiple select option values: Wordpress

我有一个包含几个项目并具有状态列的自定义表。 我创建了一个使用select更改状态的下拉列表。

在这里,我要做的是,在更改状态选择选项时,应在数据库中更新该特定行的状态值。 我可以使用jquery来获取select的值,但是当同时选择多个下拉列表时,我不确定如何更新表。

我有以下选择选项,

  <select id ="update-statusDropDown">
  <option name="waiting" value="waiting">Waiting</option>
  <option name="due" value="due">Due Diligence</option>
  <option name="escrow" value="escrow">Escrow</option>
  <option name="inspection" value="inspection">Inspection</option>
  <option name="closed" value="closed">Closed</option>
</select>

我的jQuery如下所示,

jQuery(document).ready(function () {

    jQuery('select#update-statusDropDown').change(function () {

        //Selected value
        var inputValue = $(this).val();
        alert("value in js " + inputValue);

        //Ajax for calling php function
        jQuery.post('update-listing-status.php', {dropdownValue: inputValue}, function (data) {
            alert('ajax completed. Response:  ' + data);
            //do after submission operation in DOM
        });
    });
});

我想根据下拉菜单中的“ inputValue”更新表中的状态值。 另外,如果同时选择了多个下拉菜单,则如何一起更新所有值。 有人可以帮忙吗?

我当前表的屏幕截图已随附。 在此处输入图片说明

您已经使用该下拉列表的ID注册了select的change事件,这意味着只有具有该ID的下拉列表才会触发您通过jquery.post发出的请求。

而是使用class属性作为select元素,并在该类上注册change事件

现在,要获取唯一元素,您可以使用该选择元素和选项的data属性,例如data-tableid =“ something”

在这种情况下,您可以注册所有选择元素的所有change事件,并能够提取仅对给定表或列名唯一的值。

 $('.class-name').on( 'change' , function(){ // Get the Select itself var me = $(this); var tableid = me.data('tableid'); var something = $(this).find(':selected').data('something'); console.log( tableid ); console.log( something ); } ); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select class="class-name" data-tableid="table-id"> <option value="the value" data-something="some value 2">The Title 2 </option> <option value="the value" data-something="some value">The Title</option> </select> 

因此,由于您现在能够唯一地标识正在使用的选择和正在使用的选项,因此您可以根据需要发出请求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM