1

現在、AJAX を介して Bootstrap モーダルに 1 つの値を渡すことに成功していますが、2 番目の値を渡そうとすると、コードが機能しなくなります。

JavaScript

function claimOrder(str, stre){
if (str=="") {
document.getElementById("txtH").innerHTML="Blank Order ID";
return;
}
if (stre=="") {
document.getElementById("txtH").innerHTML="Blank User ID";
return;
}

if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtH").innerHTML=xmlhttp.responseText;
}
}xmlhttp.open('GET','assignuser.php?q='+str'&w='+stre,true);
 xmlhttp.send();
}

機能をトリガーするボタン

echo '<td><a data-toggle="modal" href="#mModal" onclick="claimOrder('.$order_id.', '.$activeuser.')" class="btn btn-success btn-lg">Claim</a></td></tr>';

ボタンによって呼び出されるモーダル

<div class="modal fade" id="mModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div id="txtH"><b>Loading...</b></div>
</div><!-- /.modal -->

PHP

<?php
$q = intval($_GET['q']);
$w = intval($_GET['w']);

など... $w を定義する余分な行を除いて、AJAX 呼び出しに 2 番目の変数を追加する前に機能していた PHP に変更は加えられていません。関数と関数呼び出し行から余分なパラメーターを削除すると、assignuser.php が正常に実行され、モーダルが読み込まれるので、問題は JavaScript のどこかにあると確信しています。

4

1 に答える 1

2

+コードのこの部分でa を忘れました:

xmlhttp.open('GET','assignuser.php?q='+str'&w='+stre,true);

したがって、次のように調整する必要があります。

xmlhttp.open('GET','assignuser.php?q='+str+'&w='+stre,true);
于 2013-09-26T13:29:50.117 に答える