我已经看到了一个这样做的例子但是我得到了#34;未定义"每次我尝试访问这些值。我希望用户能够输入金额,然后在输入值中设置该金额。 HTML看起来像这样:
echo '<div class="article">
<input size="1" class="quantity" value="1"/>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="myemail...">
<input type="hidden" name="item_name" value="'.$item.'">
<input type="hidden" name="quantity" value="1">
<input type="hidden" name="amount" value="'.$price.'">
//so on...
</form>
</div>';
页面上有几个项目,每个项目都在div
课程中。使用jQuery,我试图这样做:
$(document).ready(function () {
$(".quantity").change(function() {
alert($(this).siblings('form input[name="item_name"]').val());
//$(this).siblings('form input[name="quantity"]').val($(this).val());
});
});
我一直在&#34;未定义&#34; ...当我在文章div
中测试另一个输入字段时,我可以获得val()
并进行更改。我在这里做错了什么?
解决方案:
This Post帮助我......不得不摆脱JS,取消隐藏输入并让用户填写表单。
答案 0 :(得分:0)
I have crafted a fiddle for you below just click this link.
<div class="article">
<input size="1" class="quantity" value="1" />
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick" />
<input type="hidden" name="business" value="myemail..." />
<input type="hidden" name="item_name" value="'.$item.'" />
<input type="hidden" name="quantity" value="1" />
<input type="hidden" name="amount" value="'.$price.'" />
</form>
</div>
$(document).ready(function () {
$(".quantity").change(function() {
console.log($(this).next().find("input[name='item_name']").val());
//$(this).siblings('form input[name="quantity"]').val($(this).val());
});
});
答案 1 :(得分:0)
为什么不简单而聪明而没有js?只需从数量输入字段中删除hidden
类型,然后将其更改为text
echo '<div class="article">
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="myemail...">
<input type="hidden" name="item_name" value="'.$item.'">
<input name="quantity" class="quantity" value="1">
<input type="hidden" name="amount" value="'.$price.'">
//so on...
</form>
</div>';