如何在javascript下使用onchange事件

时间:2014-01-18 14:50:17

标签: javascript php jquery mysql

我有一个动态添加行并将数据提交给mysql的代码。实现这一点我使用下面的JavaScript代码

<script  src="jquery.min.js"></script>       
<script type="text/javascript">
$(function() {
        var addDiv = $('#addinput');
        var i = $('#addinput p').size() + 1;

        $('#addNew').live('click', function() {
                $('<p><select id="p_new" name="stockid[]' + i +'" <?php echo $item; ?></select> <select name="desc[]' + i +'" <?php echo $description; ?></select><a href="#" id="remNew">Remove</a> </p>').appendTo(addDiv);
                i++;


                return false;
        });

        $('#remNew').live('click', function() { 
                if( i > 2 ) {
                        $(this).parents('p').remove();
                        i--;
                }
                return false;
        });
});

</script>

工作正常,但现在我想更新$description,因为我选择了$item

$item$description来自同一张桌子。

我有一个代码,可以简单地更新描述,因为我选择项目。 这是php代码

<form method="post" action="" name="form1">
<table width="60%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="150">Country</td>
    <td  width="150"><select name="stockid[]' + i +'" onChange="getCity('onchange.php?    
     stockid='+this.value)"><?php echo $item; ?></select></td>


  </tr>
  <tr style="">
    <td>City</td>
    <td ><div id="citydiv"><select name="desc"><option>Select City</option></select></div></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

这是javascript代码

<script>
function getXMLHTTP() { //function to return the xml http object
        var xmlhttp=false;  
        try{
            xmlhttp=new XMLHttpRequest();
        }
        catch(e)    {       
            try{            
                xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch(e){
                try{
                xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
                }
                catch(e1){
                    xmlhttp=false;
                }
            }
        }

        return xmlhttp;
    }



    function getCity(strURL) {      

        var req = getXMLHTTP();

        if (req) {

            req.onreadystatechange = function() {
                if (req.readyState == 4) {
                    // only if "OK"
                    if (req.status == 200) {                        
                        document.getElementById('citydiv').innerHTML=req.responseText;                      
                    } else {
                        alert("There was a problem while using XMLHTTP:\n" + req.statusText);
                    }
                }               
            }           
            req.open("GET", strURL, true);
            req.send(null);
        }

    }
</script>

它的工作正常,但是当我使用

<select name="stockid[]' + i +'" onChange="getCity('onchange.php?    
         stockid='+this.value)"><?php echo $item; ?></select>

上面第一个javascript文件中的代码

<select id="p_new" name="stockid[]' + i +'" <?php echo $item; ?></select>

它不起作用请根据项目选择帮我热门自动更新说明字段.....

1 个答案:

答案 0 :(得分:0)

你不能在html语句中使用变量,我在谈论[i]变量。这个变量是什么?

<select id="p_new" name="stockid[]' + i +'" <?php echo $item; ?></select>