这是与Pass data from a form to a controller in yii2相同的问题。 我想从3fields中的用户获取数据并将其传递给控制器操作。 我试图通过javascript执行此操作,但似乎没有调用javascript函数。
点击按钮后没有任何反应。控制台中也没有错误。
我在下面添加了3个字段,按钮和javascript的代码。
index2.php
DrawPixel ( coordinates roundedx, roundedy, color percent (range 0-1) )
答案 0 :(得分:1)
registerJs使用了一些jQuery赋值,所以看起来按钮调用看不到函数getValue
,但你可以使用jQuery来分配onclick和代码。
假设您的按钮有一个名为yourButton
的ID,您可以这样做
<div class="form-group pull-right">
<button id="yourButton" class="btn btn-primary" >Seach</button>
</div>
$this->registerJs (
"$('#yourButton').on('click', function() {
var uPc = $('#upc').val();
var startDate = $('#startdate').val();
var endDate = $('#enddate').val();
alert(uPc);
});"
);
在您的javascript代码中,您有&#39; .upc&#39; &#39; .startdate&#39; &#39; .enddate&#39;这意味着你正在寻找类upc,startdate endate ...但是在你的html中没有这个类与输入字段相关联..你有id然后你应该使用#udc #startdate搜索jQuery ...这样
答案 1 :(得分:0)
你可以通过序列化你的数据并使用ajax将其发送到像
这样的控制动作 $('body').on('click','#btn_id',function(){
var data = $('form#id').serialize();
$.ajax({
'type' : 'get/post',
'dataType' : 'html/json',
'url' : 'controller/action',
'data' : {variable:data},
success : function(data){
console.log('Data Pass Successfully');
},
error : function(){
console.log('There is an Error....!!!');
}
});
});