0

我需要在单击表中的链接时调用一个函数并传递一个变量以对数据库进行新查询。

在实践中,我在我的数据库表中显示了一个数据表。我想在新页面中查看它们(但只有我选择的行)。

id单击时,如何将锚元素属性中的 ID 发送到服务器(使用 jquery) ?


意大利语版本
Io necessito di richiamare una funzione sull' onclick di un link presente in una tabella e passargli un variabile per effettuare una nuova interrogazione al db。

来吧 posso 票价?

In pratica, mostro in una tabella dei dati di una tabella del db。e poi voglio visionarli in una nuova pagina (ma solo la riga scelta da me)

come posso fare per inviare al mio javascript (uso jquery) il valore id selezionato


这是我的代码:

<?php

打印(”

制作表格的代码

<... <td><a id=rich".$idrichiesta." href=\"#\" onclick=vediticket(".$idrichiesta.")> vedi 链接 < ./a>

...

efunction vediticket(ID){ $.ajax({ type: "POST", url: "inc.miapagina.inc.php", data: "idric="+ID, success:function(msg){ ("#mydiv").html(msg); } }); }`e
4

4 回答 4

2

一个错字我发现你错过了 $

success:function(msg){
    $("#mydiv").html(msg);
}

最后还有一个“`e”!

我建议先尝试清理您的代码!!!

于 2012-05-19T15:12:27.747 回答
1

我真的不知道您的代码中所有这些符号是什么。您的代码很混乱,难以阅读。你需要清理它。而且我认为 JavaScript 中没有一个名为“efunction”的关键字。我也不知道你为什么把所有东西都放在 PHPprint()中。这更难维护。

将此用于您的 td(而不是在 PHP 中print(),但您可以将其作为常规 html 使用,然后<?php ?>在属性中单独回显变量):

<td><a href="#" id="rich<?php echo $idrichiesta; ?>">Click here</a></td>

这在你的 JavaScript 文件中:

$('td a').click(function() {
    var ID = $(this).attr('id').replace('rich','');
    $.ajax({
        type: "POST",
        url: "inc.miapagina.inc.php",
        data: "idric=" + ID,
        success: function(msg) {
            $("#mydiv").html(msg); // what is #mydiv? you need to change this to the actual element you want the message to be put into
        }
    });
});​

也不要使用内联 JavaScript(onclick=""等)。这是不好的做法,因为它很难维护。像上面一样以编程方式注册事件,而不是内联,如果您要使用 jQuery。以编程方式注册事件(如上)是Unobtrusive JavaScript

我希望这有帮助。

于 2012-05-19T15:32:27.203 回答
0

your code is not very clear: you seem to have put everything inside a php print call? That's not a very good idea. Instead only open the <\?php tag when you really need dynamic content from the server. To answer your specific question, all you need to do is echo or print your php variable, just like you would when dynamically creating an html id for instance from a php variable:

<script type="text/javascript">

function vediticket(ID){
  $.ajax({
            type: "POST",
            url: "inc.miapagina.inc.php",
            data: "idric=" + <?php echo $idrichiesta;?>,
…

hum correction sorry... obviously the php echo should be in the function call, not the function definition… of the inconvenience of doing two things at once: so keep your original code and when you call the function do:

vediticket(<?php echo $idrichiesta;?>);
于 2012-05-19T15:27:15.500 回答
0
<td id="rich<?php echo $idrichiesta ?>">

$('td').click(function()
{
var ID = this.id.replace('rich', '');
$.ajax({
            type: "POST",
            url: "inc.miapagina.inc.php",
            data: ({idric: ID}),

            success:function(msg){
                      $("#mydiv").html(msg);
                     }
           });
});
于 2012-05-19T15:19:12.213 回答