onClick事件,将使用PHP-Codeigniter保存单击的锚点名称

问题描述 投票:0回答:1

我有4个链接,每次单击其中一个链接,它都会自动递增优先级的值,这是该代码的代码

<div id ="qnum" style = "text-align: center; font-size: 5em; margin-top: 0px"></div>
<div class = "container" style = "text-align: center; margin-top: 100px;">
<form id="getTicketForm" name="getTicketForm" method="post" action="">
    <input type="text" name="hiddenqnum" id="hiddenqnum" value="">
    <a href="#" onClick="getPnumber()" style = "font-size: 3em;" name = "transaction" value = "payment" id = "payment">Payment</a><br />
    <a href="#" onClick="getPnumber()" style = "font-size: 3em;" name = "transaction" value = "landtax" id = "landtax">Land Tax</a><br />
    <a href="#" onClick="getPnumber()" style = "font-size: 3em;" name = "transaction" value = "spl" id = "spl">Special Lane</a><br />
    <a href="#" onClick="getPnumber()" style = "font-size: 3em;" name = "transaction" value = "bpld" id = "bpld">BPLD</a><br />
    </form>
</div>

这是函数getPnumber()

<script type="text/javascript">
//display Priority Number
    var num = 1;
    var queue = ('0000'+num).slice(-4);;
    document.getElementById("qnum").innerHTML = "Your Priority Number is" +  "<br>" + queue;
//if button is clicked, queue will increment
    function getPnumber() {
        num += 1;
        var queue = ('0000'+num).slice(-4);;
        document.getElementById("qnum").innerHTML = "Your Priority Number is" + "<br>" + queue;

        
        document.getTicketForm.hiddenqnum.value = queue;
       
    };

</script>
我在那部分没有问题,但我也想将链接的值和优先级号保存到数据库中这是我的剧本,

function save(){

$(document.ready)(function(){
    $('#getTicketForm').click(function(){
        var qnumber = $("input[name=hiddenqnum]").val();
        var transaction = $().val();
     
            $.ajax({
                url:'<?php echo base_url(); ?>main/queue',
                type: 'POST',
                data: {
                    qnumber : qnumber,
                    transaction : transaction
                },
                success : function(data){
                    console log.(data);
                }
            })
    });
});
};

</script>

之后,我将链接的onclick更改为函数Onclick()这是>

<script>
function onClick(){
 getPnumber();
 save();
};
</script>

我希望您能帮助我保存链接的值和优先级,尽管它在单击后仍会自动递增。顺便说一句,我正在使用php-codeigniter无论如何,我的问题是我的函数save()我无法保存到数据库,我也有一个问题,要从隐藏文本中获取优先级数字并将其传递给var qnumber

我有4个链接,每次单击其中一个链接,它将自动递增优先级数字的值,这是该代码的代码

]

您也可以通过使用jQuery来实现。另外,您还需要添加一个输入字段来跟踪transaction值。我还为您的Ajax调用添加了一个新的Button。

您在这里-

<div id="qnum" style="padding:10px 20px;background:yellow;height:50px;color:#000;"></div>
<div class="container" style="padding:10px 20px;text-align:left;border:1px solid #ddd">
  <form id="getTicketForm" name="getTicketForm" method="post" action="">
    <input type="text" name="hiddenqnum" id="hiddenqnum" value="" /><br />
    <input type="text" name="hiddentransaction" id="hiddentransaction" value="" /><br />
    <a href="#" name="transaction" value="payment" id="payment">Payment</a><br />
    <a href="#" name="transaction" value = "landtax" id="landtax">Land Tax</a><br />
    <a href="#" name="transaction" value = "spl" id="spl">Special Lane</a><br />
    <a href="#" name="transaction" value = "bpld" id="bpld">BPLD</a><br />
    <button type="button" id="savetodb">Save to db</button>
  </form>
</div>

JS:

var num = 1;

$(document).ready(function(){
  var queue = ('0000'+num).slice(-4);
  $("#qnum").html("Your Priority Number is :"+ queue);

  $("a[name=transaction]").each(function() {
    $(this).on("click", function(e){
      e.preventDefault();
      getPnumber($(this).attr('id'));
    });
  });

  $('#savetodb').on('click', function(e){
    e.preventDefault();
    var qnumber = $("input[name='hiddenqnum']").val();
    var transaction = $("input[name=hiddentransaction]").val();

    $.ajax({
      // Do your ajax call using qnumber, transaction value here
    });

  });

});

function getPnumber(transaction) {
  num += 1;
  var queue = ('0000'+num).slice(-4);;
  $("#qnum").html("Your Priority Number is :"+ queue);
  $("input[name='hiddenqnum']").val(queue);
  $("input[name='hiddentransaction']").val(transaction);
};
javascript php jquery ajax codeigniter
1个回答
0
投票

您也可以通过使用jQuery来实现。另外,您还需要添加一个输入字段来跟踪transaction值。我还为您的Ajax调用添加了一个新的Button。

© www.soinside.com 2019 - 2024. All rights reserved.