Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php javascript中的变量,自动填充形式_Php_Javascript_Forms - Fatal编程技术网

Php javascript中的变量,自动填充形式

Php javascript中的变量,自动填充形式,php,javascript,forms,Php,Javascript,Forms,我在这个脚本上从javascript接收超过8个值时遇到问题。。。它应该自动填充下拉选项(选择)上的字段,它工作正常,但我不能得到超过8个值。。。问题出在哪里?谢谢 <script type="text/javascript"> // Format of StoreDetails() // Name,Addr1,Addr2,Addr3,Phone,FAX,Email,Webpage, Url var StoreDetails = [ ['Ple

我在这个脚本上从javascript接收超过8个值时遇到问题。。。它应该自动填充下拉选项(选择)上的字段,它工作正常,但我不能得到超过8个值。。。问题出在哪里?谢谢

<script type="text/javascript">
    // Format of StoreDetails()
    // Name,Addr1,Addr2,Addr3,Phone,FAX,Email,Webpage, Url
    var StoreDetails = [
        ['Please select','','','','','','','',''],
        ['Please select','test1','test2','test3','test4','test5','test6','test7','test8']
        // Note: no comma
    ];
    function Setup(TA) {
        var str = "<select id='Store' class='styled-select' onchange='StoreInfo()'>";
        for (var i=0; i<StoreDetails.length; i++) {
            str += '<option value="'+StoreDetails[i].join('|')+'">'+StoreDetails[i]   [0]+'</option>';
        }
        str +='</select>';
        document.write(str);
    }
    function StoreInfo() {
        var sel = document.getElementById('Store').selectedIndex;
        var tmp = [];  tmp.push(sel);
        for (var i=1; i<8; i++) { 
            tmp.push(StoreDetails[sel][i]); 
        }
        document.getElementById('txtName').value = tmp[1];
        document.getElementById('txtAddr1').value = tmp[2];
        document.getElementById('txtAddr2').value = tmp[3];
        document.getElementById('txtAddr3').value = tmp[4];
        document.getElementById('txtPhone').value = tmp[5];
        document.getElementById('txtPhone2').value = tmp[6];
        document.getElementById('txtEmail').value = tmp[7];
        document.getElementById('txtWebpage').value = tmp[8];
        document.getElementById('txtUrl').value = tmp[9];
    }
</script>
</head>
<body>
    <div class="container">     
       <header class="clearfix">            
          <img src="logo.png"/>
          <nav class="codrops-demos">
             <a class="current-demo" href="index.php">Some text</a>
          </nav>                
       </header>
       <section class="main clearfix">
           <div class="fleft">
               <p>Da bi porucili vizit karte, izaberite ime i kolicinu, zatim potvrdite.</p>
           </div>
           <div class="fleft">
           <form id="testconfirmJQ" name="testconfirmJQ" method="post" action="output.php">
<script type="text/javascript">Setup();</script>
    <table border="0">
       <input type="text"  hidden="hidden"  id="txtName" name="txtName" size="30" value="">    </td></tr>
       <input type="text"  hidden="hidden" id="txtAddr1" name="txtAddr1"  size="30" value=""> </td></tr>
       <input type="text"  hidden="hidden" id="txtAddr2" name="txtAddr2" size="30" value=""></td></tr>
       <input type="text"  hidden="hidden" id="txtAddr3" name="txtAddr3" size="30" value=""> </td></tr>
       <input type="text"  hidden="hidden" id="txtPhone" name="txtAddr3" size="30" value=""> </td></tr>
       <input type="text"  hidden="hidden" id="txtPhone2" name="txtPhone2" size="30" value=""></td></tr>
       <input type="text"  hidden="hidden" id="txtEmail" name="txtEmail" size="30" value=""> </td></tr>
       <input type="text"  hidden="hidden" id="txtUrl" name="txtUrl" size="30" value=""></td> </tr>
     <tr><td>How much?:</td><td><input type="text" id="kolicina" name="kolicina" size="5"  value=""></td></tr>
     <tr><td><input id="submitJQ" name="submitJQ" type="submit" class="styled-button-1"   value="Confirm" /></td></tr>
     </table>
</form>

//StoreDetails()的格式
//姓名、地址1、地址2、地址3、电话、传真、电子邮件、网页、Url
var StoreDetails=[
[“请选择”、“”、“”、“”、“”、“”、“”、“”、“”、“”、“”、“”、“”],
[‘请选择’、‘测试1’、‘测试2’、‘测试3’、‘测试4’、‘测试5’、‘测试6’、‘测试7’、‘测试8’]
//注:无逗号
];
功能设置(TA){
var str=“”;

for(var i=0;i您正在限制for循环中
tmp
的大小(范围从
i=1
i<8
)。一些更改:

var StoreDetails = [
    ['A store','test1','test2','test3','test4','test5','test6','test7','test8','url']
    // Note: no comma
];

function Setup() {
    var str = "<select id='Store' class='styled-select' onchange='StoreInfo()'>";

    str += '<option disabled="disabled" selected="selected">Please Select</option>';

    for (var i=0; i<StoreDetails.length; i++) {
        str += '<option value="'+StoreDetails[i].join('|')+'">'+StoreDetails[i]   [0]+'</option>';
    }

    str +='</select>';

    document.write(str);
}

function StoreInfo() {
    var sel = document.getElementById('Store').value;

    var values = sel.split("|");

    document.getElementById('txtName').value = values[1];
    document.getElementById('txtAddr1').value = values[2];
    document.getElementById('txtAddr2').value = values[3];
    document.getElementById('txtAddr3').value = values[4];
    document.getElementById('txtPhone').value = values[5];
    document.getElementById('txtPhone2').value = values[6];
    document.getElementById('txtEmail').value = values[7];
    document.getElementById('txtWebpage').value = values[8];
    document.getElementById('txtUrl').value = values[9];
}

Setup();
var-StoreDetails=[
['A store'、'test1'、'test2'、'test3'、'test4'、'test5'、'test6'、'test7'、'test8'、'url']
//注:无逗号
];
函数设置(){
var str=“”;
str+='请选择';
对于第8个变量的(变量i=0;i

document.getElementById('txtWebpage').value = values[8];
但是没有称为“txtWebpage”的元素,因此当它到达时:

document.getElementById('txtUrl').value = values[9];
没有定义

此外,与使用值8进行计数不同,我将使用:

StoreDetails[sel].length

你不能至少正确地缩进你的代码吗?
(var i=1;你能在它不起作用的情况下对此进行分析吗?顺便说一句,你的html是无效的。更新的代码对我起作用了-我认为部分问题是
StoreDetails
字符串中只有8个变量超出了行项目的名称:)Joe Terry,你介意和我分享这个表单吗?出于某种原因,它对我仍然不起作用,我已经尝试了所有方法。谢谢。就是这样,我遗漏了整个输入字段,我有8个,这就是为什么它不能写数据的原因!非常感谢你为我解释清楚。干杯,这只是一个问题,因为有人可能是他lpful也是。我正在尝试更改div内容(我有一个模式弹出窗口,上面有背景图像,我希望它在每次选择下拉菜单时都会更改),我使用的这个脚本是否可能?再次提前感谢。只是一个关于这个的问题,因为有人可能会有所帮助。我正在尝试更改div内容(我有一个模式弹出窗口,上面有背景图像,我希望它在每次选择下拉菜单时都会改变),我使用的这个脚本是否有可能?再次感谢。不相关,但在更改函数中放置类似于此文档的内容。getElementById('modalId')。className=“newBackgroundImageCssClass”你介意帮我解决这个问题吗?我已经解决了这个问题,我应该开始新的讨论还是…?我正在努力学习,谢谢!)
StoreDetails[sel].length