0

嗨,我正在开发一个 php java 提交评论系统,现在我遇到了一个我无法单独解决的问题。我只是想问我怎么做这个

$('#addCommentForm'+x).submit(function(e){

DO something here
}

addCommentForm 后面有很多数字,如下所示: addCommentForm1 addCommentForm2 addCommentForm3 addCommentForm4 和上升。那么我怎样才能让这个动态改变的名字在java中工作?

var x = $_POST['comentonpost'];

$_POST 来自这里:

<script type='text/javascript'> var $_POST = <?php echo !empty($_POST)?json_encode($_POST):'null';?>; </script>

X - 是我从 HTML 表单中获取的用于提交信息的 post 值,但是如果我在一个评论上按一次提交,则 javascript 仅适用于该评论,直到页面被刷新。
在这里你可以看到 --- http://www.youtube.com/watch?v=okqQsPCZqVE

这是整个java脚本:

$(document).ready(function(){

var x = $_POST['comentonpost'];
/* The following code is executed once the DOM is loaded */

/* This flag will prevent multiple comment submits: */
var working = false;

/* Listening for the submit event of the form: */
$('#addCommentForm'+x).submit(function(e){

    e.preventDefault();
    if(working) return false;

    working = true;
    $('#submit').val('Working..');
    $('span.error').remove();

    /* Sending the form fileds to submit.php: */
    $.post('comment.submit.php',$(this).serialize(),function(msg){

        working = false;
        $('#submit').val('Submit');


            /* 
            /   If the insert was successful, add the comment
            /   below the last one on the page with a slideDown effect
            /*/

            $(msg.html).hide().insertBefore('#addCommentContainer'+x).slideDown();


    },'json');

});

});

所以请告诉我如何解决这个问题并让这个脚本在不刷新页面的情况下运行良好?

4

1 回答 1

0

尝试用var x = $_POST['comentonpost']这个替换:

var x = <?= !empty($_POST['comentonpost']) ? json_encode($_POST['comentonpost']) : 'null';?>;

Javascript 数组必须首先通过 using 定义var variableName = new Array();,否则它们将像标准变量一样工作。因此,如果不需要它们,最好避免设置和处理它们的麻烦。

于 2013-06-01T23:52:11.413 回答